私はQtQuickControlsアプリケーションで作業していますが、ショートカットコンテキストに関するいくつかの難しい動作に気付きました。 QtQuick.Controls 2.0を使用すると、ウィンドウ固有のショートカットが互いにオーバーライドしているように見えます。私のアプリケーションは完全にキー駆動型で、複数のページ/ポップアップ(産業用コントロールパネル)で構成されています。私は彼らのシンプルさとフォーカス管理の欠如のためにショートカットを決めました。 QtQuick.Controls 2.2で動作するので、私の実装は合法であることを知っています。実装の概要を以下に示します。QtQuick.Controlsウィンドウ間のショートカットコンテキストのオーバーラップ
ApplicationWindow{
id: mainWindow
Shortcut{
objectName: "menuButton"
context: Qt.WindowShortcut
sequence: "z"
onActivated: {
mainMenu.open()
}
}
}
Popup{
id: mainMenu
anchors.fill: parent
Rectangle{
id: rectangle
color: "#ffffff"
}
Shortcut{
id: changeColor
context: Qt.WindowShortcut
sequence: "z"
onActivated: {
rectanlge.color = "steelblue"
}
}
}
それは大まかな実装だが、私は、同じ配列を持つ2つのショートカットがそのコンテキストを2つの相互に排他的な窓であったとしても、その配列の最初のキーを押した後、互いに相殺されることに気付きました。これはバグですか?回避策はありますか?これはQtQuick.ControlsでQt 5.9.0で動作しています。2.2