0
我想淡出音頻文件的音量,同時淡入QML中的視頻聲音。 這應該不是動畫的問題,但我在這裏打牆。 似乎volume
屬性在QML中的所有媒體元素的所有實例之間以某種方式共享。例如,見下面的代碼:在QML音頻/視頻元素中設置每個實例的音量?
Rectangle
{
id:mainScreen
focus: true
Video
{
id:video
anchors.fill: parent
source: "path/to/file.mp4";
volume:1
onVolumeChanged: console.warn("video: "+volume)
autoPlay: true
}
Audio
{
source: "path/to/file.mp3";
id:audio
volume:1
onVolumeChanged: console.warn("audio: "+volume)
autoPlay: true
}
Keys.onPressed:
{
audio.volume = Math.random(1);
}
}
當我按一個鍵,既video
和audio
的onVolumeChanged
-Handlers被調用。 有沒有辦法獨立控制元素的體積?
或者我應該提交一份Qt錯誤報告?這是Qt 5.2.0的OpenGL MSVC2010構建以防萬一。
您可以嘗試在'Keys.onPressed'處理程序中執行'event.accepted = true;'嗎?我的猜測是,這個事件再次拋出到另一個小部件。請參閱http://qt-project.org/doc/qt-5.0/qtquick/qml-qtquick2-keys.html#onPressed-signal和http://qt-project.org/doc/qt-5.0/qtquick/qml -qtquick2-keyevent.html#accepted-prop獲取更多信息 – Kakadu
謝謝,但這並沒有幫助。這兩個處理程序仍然被稱爲...此外,這只是一個最小的例子,它演示了我的問題,在真實代碼中,音量變化不是由鼠標輸入觸發的,而是由其他事件觸發的。 – anderas
不知道。順便說一句,你可以嘗試訪問IRC中的一些QtQuick開發人員。它絕對可以是一個錯誤。 – Kakadu