2011-12-14 59 views
3

我有一个自定义NSView,我希望用户能够点击并拖动它。 NSView当然会收到鼠标拖动事件并做出适当的回应。在拖动鼠标时,我想确保鼠标光标不移动。如何让鼠标光标在自定义NSView内拖动时不移动?

我可能会隐藏光标,并使其在用户停止拖动后重新出现在同一位置,但有没有更好的方法来做到这一点?

+0

你为什么想要这样做?看起来这将是非常不直观的。 – 2011-12-14 03:38:15

回答

1

结束观察kCGEventLeftMouseDragged事件,然后调用CGWarpMouseCursorPosition重置鼠标位置。光标停留在我拖动的整个时间。

2

更好的解决方案 - 使用CGAssociateMouseAndMouseCursorPosition函数来启用/禁用光标移动。

当鼠标移动一点点,然后真正快速跳回时,用户只会将鼠标移回原位。