当前位置:  开发笔记 > 编程语言 > 正文

Python for Autohotkey风格的键组合嗅探,自动化?

如何解决《PythonforAutohotkey风格的键组合嗅探,自动化?》经验,为你挑选了2个好方法。

我想自动执行几项任务(例如,模拟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中轻松使用它的大部分功能.我已经张贴了关于如何在这里做它之前.



1> Dustin Wyatt..:

您可能想要查看AutoIt.它可以完成AutoHotKey可以执行的所有操作,但语言语法并不会让您想要完成任务.另外,它有COM绑定,所以如果你愿意,你可以在python中轻松使用它的大部分功能.我已经张贴了关于如何在这里做它之前.



2> Parand..:

使用pyHook和win32扩展找到答案:

import pyHook
import pythoncom

def OnKeyboardEvent(event):
    print event.Ascii

hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent
hm.HookKeyboard()

while True:
    pythoncom.PumpMessages()

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有