【发布时间】:2015-12-22 19:04:23
【问题描述】:
我正在编写一个连接到设计软件的程序,例如外部插件,然后监视鼠标移动和事件。它将根据连接的软件鼠标事件的状态采取行动。
这个想法是外部应用程序将能够与多个类似程序而不是特定于程序的插件接口。
原型和可能的生产软件是使用 Tkinter GUI 库用 python 编写的。尝试是使其简单和便携。
无需激活 Tkinter 窗口,我就能轻松获取“OS”级别的鼠标位置(真正的屏幕 X、Y)。我的问题是我没有找到一种方法来轻松地从 Tkinter 获取鼠标单击事件。我只能在活动的 Tkinter 窗口上收集事件。
Tkinter 为鼠标位置提供了这个:
coord = self.gui.winfo_pointerxy()
我找不到类似的鼠标事件。有像 selfspy 和 Pymouse(现在是 PyUserInput 的一部分)这样的库来监视事件,但主要用于控制输入设备。我的备用想法是在编写我自己的输入监控程序时使用这些库作为参考。
我的两个主要平台是 Mac 和 Windows。
长话短说:
- Tkinter 能否在事件超出范围时给我鼠标事件 Tkinter 窗口。
- 如果没有,是否还有其他“开箱即用”选项可以为我提供鼠标 X、Y 和鼠标事件。
- 如果没有开箱即用的解决方案,关于方法和 API 的一些建议。 (看起来像 windows、Quartz 和/或的 win32api Mac 中的 Cocoa 和 Linux 中的 Xlib)
感谢您的宝贵时间
【问题讨论】:
标签: python windows macos tkinter mouse