Qt 在QML中拖动元素时,如何实时获取鼠标坐标?

Qt 在QML中拖动元素时,如何实时获取鼠标坐标?,qt,mouse,mouseevent,drag,qml,Qt,Mouse,Mouseevent,Drag,Qml,我有一个用Qt编写的程序,他使用QML 我想知道在拖动元素的过程中是否可以实时知道坐标 实际上,我使用一个自定义图像替换光标,它的位置用光标的坐标(隐藏)更新 实际上,我可以用“onPositionChanged”替换鼠标光标,或者用“onClicked”单击鼠标光标之后恢复鼠标光标的位置 我还想在拖动过程中了解这些坐标,我尝试了“onPressed”和“onpresseandhold”,但没有成功,自定义光标的位置仅在单击释放时更新 如果您有任何帮助,我们将不胜感激。拖动元素将直接更改x和y属

我有一个用Qt编写的程序,他使用QML

我想知道在拖动元素的过程中是否可以实时知道坐标

实际上,我使用一个自定义图像替换光标,它的位置用光标的坐标(隐藏)更新

实际上,我可以用“onPositionChanged”替换鼠标光标,或者用“onClicked”单击鼠标光标之后恢复鼠标光标的位置

我还想在拖动过程中了解这些坐标,我尝试了“onPressed”和“onpresseandhold”,但没有成功,自定义光标的位置仅在单击释放时更新


如果您有任何帮助,我们将不胜感激。拖动元素将直接更改
x
y
属性,以便您可以监视这些属性:

Rectangle {

    id: draggable

    width: 100
    height: 100

    onXChanged: {
        if (mouseArea.drag.active) {
            console.log("x=" + x)
        }
    }
    onYChanged: {
        if (mouseArea.drag.active) {
          console.log("y=" + y)
        }
    }

    MouseArea {
        id: mouseArea
        anchors.fill: parent
        drag {
            target: draggable
            axis: Drag.XandYAxis
        }
    }
}
考虑在MouseArea中设置“hoverEnabled:true”