我有一个用 Qt 编写的程序,它使用 QML。
我想知道是否可以在拖动元素期间实时知道坐标。
实际上,我使用了一个替换光标的自定义图像,它的位置用光标(隐藏)的坐标更新。
我实际上可以在鼠标移动期间使用“onPositionChanged”或在单击“onClicked”后恢复鼠标光标的位置。
我还想在拖动过程中知道这些坐标,我尝试使用“onPressed”和“onPressAndHold”但没有成功,自定义光标的位置仅在单击释放时更新。
任何帮助将不胜感激,在此先感谢您。
最佳答案
拖动元素更改 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
}
}
}
关于qt - 在QML中拖动元素时如何实时获取鼠标坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14333808/