Python 在OSX中使用相对(相对于绝对)鼠标移动的方法?
我正在开发一个控制鼠标移动的python应用程序 我使用Quartz.CoreGraphics库实现了绝对鼠标位置的完美工作,该库公开了一些用于鼠标控制的CGEvent命令(如“cgEventCreateMouseeEvent”和“CGEventPost”) 然而,我在文档中找不到任何关于鼠标相对移动的信息。我真的很想模拟实际的鼠标移动(即“x侧向,y向上”而不是“x,y”),因为使用我的应用程序的一些人有多个监视器,我想,仅仅通知操作系统鼠标移动要比自己设置位置容易得多 我的界面的性质也适合相对鼠标移动Python 在OSX中使用相对(相对于绝对)鼠标移动的方法?,python,macos,core-graphics,mouse,quartz-graphics,Python,Macos,Core Graphics,Mouse,Quartz Graphics,我正在开发一个控制鼠标移动的python应用程序 我使用Quartz.CoreGraphics库实现了绝对鼠标位置的完美工作,该库公开了一些用于鼠标控制的CGEvent命令(如“cgEventCreateMouseeEvent”和“CGEventPost”) 然而,我在文档中找不到任何关于鼠标相对移动的信息。我真的很想模拟实际的鼠标移动(即“x侧向,y向上”而不是“x,y”),因为使用我的应用程序的一些人有多个监视器,我想,仅仅通知操作系统鼠标移动要比自己设置位置容易得多 我的界面的性质也适合相
在Windows中,win32 API中有一个函数,它允许使用“原始”鼠标命令,而这些命令正是我想要的。在OS X中有什么方法可以实现这一点吗?我认为,以事件管理的方式是不可能的。您需要捕获旧的(X,Y)并自己计算增量。这意味着当你点击屏幕的末尾时会出现问题 好消息是你可以移动鼠标。因此,如果鼠标击中边缘,可以将其重新定位到中心。也可以使鼠标指针不可见。最后,您可以使用覆盖整个屏幕的跟踪矩形捕捉鼠标移动。好消息是你可以精确地模拟你想做的事情,但坏消息是这需要一些工作 这方面有用的API包括:
(参见CGEventTap
CGPostEvent
(请参阅)CGDisplayMoveCursorToPoint
(参见CGEventTap
CGPostEvent
(请参阅)CGDisplayMoveCursorToPoint