c++ - 显示qml时如何在QML中播放声音
问题描述
我需要使用 SoundEffect 在 QML 中播放声音,但是我发现的所有示例都基于某些事件(鼠标单击等)播放声音,但是当显示 qml 时如何播放声音?
这是单击鼠标的示例:
SoundEffect {
id: playSound
source: "soundeffect.wav"
}
MouseArea {
id: playArea
anchors.fill: parent
onPressed: { playSound.play() }
}
解决方案
您可能需要在Component.completed
实例化实现组件的对象时发出的信号:
MouseArea {
id: playArea
Component.onCompleted: playSound.play()
}
如果它确实是一个图形项目,并且每次项目变得可见时都需要播放声音,则处理visibleChanged
信号,例如:
Rectangle {
id: soundBox
onVisibleChanged: if(visible) playSound.play()
}
推荐阅读
- php - 对学说查询生成器的误解
- php - 在 Symfony 3.4 中使用这样的服务是否正确?
- java - Elasticsearch:按字母顺序排序,忽略数字和特殊字符
- python - 从另一个目录调用 python setup.py install
- mysql - MySQL选择错误的索引
- c# - Need to speed up writing large object graph to database with Entity Framework
- c# - Fill spinner with list
- node.js - 如何使用 koa 允许 Access-Control-Allow-Origin
- java - android上基于时间值的连续请求
- laravel - Laravel Eloquent no primary key