我遇到了QML程序問題。在頂層main.qml文件,我有一些鍵盤快捷鍵,像這樣:QML鍵盤快捷鍵會干擾Key OnPressed Events
Shortcut {
sequence: "Up"
onActivated: {
// yadda yadda
}
}
在另一個文件中,我有幾個Keys.onPressed要求是這樣的:
Keys.onPressed: {
if (event.key == Qt.Key_Up) {
// yadda yadda
}
}
顯然,快捷方式正在干擾OnPressed呼叫。當我評論快捷鍵時,OnPressed的工作很好。但是,當它們都處於活動狀態時,Shortcut似乎會攔截鍵盤按鍵並阻止OnPressed啓動。
我知道,用鼠標事件,Qt有「接受」變量。如果您希望事件繼續向下傳播,您可以在OnActivated函數中設置「accepted = false」來完成此操作。但是,我在Shortcuts API中看不到任何等效的「接受」變量。有其他方法可以確保事件傳播正確嗎?
謝謝!我正在使用Qt 5.7。我能夠巧妙地設置/取消設置啓用的變量以實現我的目標。 – user1765354