存储当前鼠标位置(系统范围)然后(稍后)将鼠标放在该存储点的最佳方法是什么?
[NSEvent mouseLocation]
让我找到了位置,我可以用CGEventMouseMoved
移动鼠标,但他们每个都使用不同的坐标系统(我相信y = 0是NSEvent和CGEvent的底部。)
我担心捕获屏幕高度的稳健性并使用它在两者之间进行转换 - 或者这是最好的方法吗?
答案 0 :(得分:1)
您可以使用CGEventTap来获取鼠标事件而不是NSEvent。然后,您可以选择在活动到来时翻转或不打开。
(我相信y = 0是NSEvent的顶部,也是CGEvent的底部)。
你有错误的方法。石英使用翻转,即y = 0 =顶部。 AppKit使用unflipped,即y = 0 = bottom。 (编辑:对于事件,即Quartz 2D,绘图API,使用未折叠的坐标,与AppKit相同。)
答案 1 :(得分:0)
是的,使用主屏幕的高度是翻转屏幕坐标的标准方式。