存储当前鼠标位置(系统范围)然后(稍后)将鼠标放在该存储点的最佳方法是什么?
[NSEvent mouseLocation]
获取位置,然后我可以使用 CGEventMouseMoved
移动鼠标,但它们各自使用不同的坐标系统(我相信 y=0 是 NSEvent 的顶部和 CGEvent 的底部)。
我担心捕获屏幕高度并使用它在两者之间进行转换的稳健性 - 或者这是最好的方法?
最佳答案
您可以使用CGEventTap获取鼠标事件而不是 NSEvent。然后,您可以在事件到来时选择翻转或不翻转。
(I believe y=0 is the top for NSEvent and the bottom for a CGEvent).
你的做法是错误的。 Quartz采用翻转,即y=0=top。 AppKit使用unflipped,即y=0=bottom。 (编辑:对于事件,即 Quartz 2D,绘图 API,使用未翻转的坐标,与 AppKit 相同。)
关于cocoa - 如何存储(和使用)当前鼠标位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2126622/