【问题标题】:How to play sound in QML when qml is shown显示qml时如何在QML中播放声音
【发布时间】:2018-04-24 21:53:06
【问题描述】:

我需要使用 SoundEffect 在 QML 中播放声音,但我发现的所有示例都基于某些事件(鼠标单击等)播放声音,但是当显示 qml 时如何播放声音?

这是鼠标点击的例子:

SoundEffect {
     id: playSound
     source: "soundeffect.wav"
 }
 MouseArea {
     id: playArea
     anchors.fill: parent
     onPressed: { playSound.play() }
 }

【问题讨论】:

  • "当显示 qml" 你的意思是一旦显示其中的主要小部件,对吧?
  • @underscore_d 是

标签: c++ qt qml


【解决方案1】:

您可能需要一个信号Component.completed,每当实例化实现组件的对象时就会发出该信号:

MouseArea {
    id: playArea
    Component.onCompleted: playSound.play()
}

如果它确实是一个图形项目,并且您需要在每次项目变得可见时播放声音,则处理 visibleChanged 信号,例如:

Rectangle {
    id: soundBox
    onVisibleChanged: if(visible) playSound.play()
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多