QML前进/后退鼠标按钮处理

时间:2015-06-13 18:27:42

标签: button qml mouse

我正在尝试让我的QML应用程序对某些鼠标上的前进/后退按钮(有时标记为按钮4/5)做出反应。似乎鼠标区域/事件只允许三个主鼠标按钮上的信号。

有没有办法在QML中处理这些按钮?

1 个答案:

答案 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")
        }
    }
}