0

我正在处理的一个小项目的一部分涉及“校准”要截屏的屏幕坐标。
通过“屏幕”,我指的是整个桌面,而不是我的 GUI 窗口。

当出现 QDialog 窗口(我已对其进行子类化)时,会校准坐标。
提示用户单击屏幕上的几个位置。
我需要该程序记录屏幕上任何地方发生的所有鼠标点击的位置 - 那些不会本地触发 QDialog mouseEvent 的位置,因为它们在此窗口之外。

显然覆盖 mouseEvent 方法不起作用,因为 QDialog 没有收到点击。

如何捕获全局鼠标单击,以便在单击屏幕的任何部分时触发事件并将其发送到 QDialog?

(我更喜欢基于 Qt 的解决方案,但如果需要,我可以向其他库开放)。

谢谢!

4

2 回答 2

3

有一些跨平台示例说明如何使用http://pypi.python.org/pypi/autopy/0.51执行此操作

于 2012-10-31T05:21:25.000 回答
0

我假设这是不可能的,而是使用 pyHook,让 Qt 泵送消息。

于 2012-10-31T05:16:24.043 回答