我正在尝试让我的QML应用程序对某些鼠标上的前进/后退按钮(有时标记为按钮4/5)做出反应。似乎鼠标区域/事件只允许三个主鼠标按钮上的信号。
有没有办法在QML中处理这些按钮?
答案 0 :(得分:2)
如果查看predefined mouse buttons列表,您会看到有一个ForwardButton和BackButton。唯一的"技巧"你需要在QML中监听这些按钮MouseArea是设置acceptedButtons属性。
您可以将其设置为仅侦听前进和后退:
acceptedButtons: Qt.ForwardButton | Qt.BackButton
或者您可以只听任何鼠标按钮:
acceptedButtons: Qt.AllButtons
总而言之,您的MouseArea看起来像这样:
MouseArea {
acceptedButtons: Qt.AllButtons
onClicked: {
if (mouse.button == Qt.BackButton) {
console.log("Back button");
} else if (mouse.button == Qt.ForwardButton) {
console.log("Forward button")
}
}
}