2011-05-15 146 views
1

所以,我有一个运行背景的python脚本,并且我希望它在按下组合键时触发X函数。我将如何实现?问题是应用程序将在后台运行,所以它不会从操作系统获得焦点。Python键盘快捷键

+0

这个答案(如果有的话)是非常特定的操作系统。 – fyngyrz 2011-05-15 19:19:11

回答

0

那么,它基本上与python无关。这很大程度上取决于您正在使用的操作系统。

您可以使用Linux的XLIB(http://python-xlib.sourceforge.net/)或wxPython的Windows下(http://wxpython.org/docs/api/wx.Window-class.html#RegisterHotKey

下另一个想法是挂钩系统的键盘事件(通过pyHook),并试图抓住任何热键。

+0

谢谢。 pyHook看起来是正确的,但它只是Windows。有没有一个Mac的lib这样做? – user697108 2011-05-15 20:16:54

+0

@ user697108:您需要使用PyObjc与http://www.theregister.co.uk/2009/02/24/hotkeys_framework2/ – jdi 2012-06-30 02:49:32

+0

我认为wxPython可能不是正确的建议。通过GUI框架编写解决方案意味着它仅在应用程序具有焦点时才有用。解决方案必须是操作系统钩子(比如你的XLib建议) – jdi 2012-06-30 02:50:45