我想自动执行几项任务(例如,模拟eclipse风格ctrl- shift- R为其他编辑器打开对话框).一般模式是:用户将按某些组合键,我的程序将检测到它并可能弹出一个对话框以获取用户输入,然后通常通过运行可执行文件来运行相应的命令.
我的目标环境是Windows,虽然跨平台会很好.我的程序将启动一次,读取配置文件,然后坐在后台,直到由组合键或其他事件触发.
基本上是自动键.
为什么不使用autohotkey?我实际上有很多autohotkey宏,但我更喜欢使用更健全的语言.
我的问题是:有一个很好的方法让后台python进程检测组合键吗?
更新:使用pyHook和win32扩展找到答案:
import pyHook import pythoncom def OnKeyboardEvent(event): print event.Ascii hm = pyHook.HookManager() hm.KeyDown = OnKeyboardEvent hm.HookKeyboard() while True: pythoncom.PumpMessages()
Dustin Wyatt.. 7
您可能想要查看AutoIt.它可以完成AutoHotKey可以执行的所有操作,但语言语法并不会让您想要完成任务.另外,它有COM绑定,所以如果你愿意,你可以在python中轻松使用它的大部分功能.我已经张贴了关于如何在这里做它之前.
您可能想要查看AutoIt.它可以完成AutoHotKey可以执行的所有操作,但语言语法并不会让您想要完成任务.另外,它有COM绑定,所以如果你愿意,你可以在python中轻松使用它的大部分功能.我已经张贴了关于如何在这里做它之前.
使用pyHook和win32扩展找到答案:
import pyHook import pythoncom def OnKeyboardEvent(event): print event.Ascii hm = pyHook.HookManager() hm.KeyDown = OnKeyboardEvent hm.HookKeyboard() while True: pythoncom.PumpMessages()