1

我想知道是否有一种方法可以发送到一些函数,比如utilety.move一些变量,比如(newX, newY)代表鼠标移动到哪里的类似伪代码

each time event calls function
var coord =  - initioal mouse coords + current mouse coords
utilety.move(coord )
initioal mouse coords  = current mouse coords

所以要控制 QML 元素的移动,而不是使用拖动目标,而是使用自己的方法(可能是 C++ 之一)

4

2 回答 2

1

如果您为移动平台开发,您可以考虑使用 Qt Quick Gestures 插件:

import Qt.labs.gestures 2.0
GestureArea {
    Tap: {
        when: gesture.hotspot.x > gesture.hotspot.y
        onStarted: console.log("tap in upper right started")
        onFinished: console.log("tap in upper right completed")
    }
}

在这里查看更多信息: http: //labs.qt.nokia.com/2010/10/05/getting-in-touch-with-qt-quick-gestures-and-qml/

于 2012-04-27T13:41:51.860 回答
1

我不清楚你的问题,但看起来你想在 QML 中有鼠标坐标。

如果是这种情况,您可以使用 MouseArea 元素,它具有 mouseX 和 mouseY 属性,您可以使用它们来定位鼠标光标。

当鼠标位置改变时调用 onPositionChanged 处理程序。

MouseArea {
     anchors.fill: parent
     onPositionChanged: { 
      //var curMouseX = mouseX 
      //var curMouseY = mouseY 
     }
}
于 2012-04-27T00:42:08.293 回答