如何在python中阅读后台的按键

时间:2016-05-18 16:15:04

标签: python-3.x keypress

我知道在后台接听是一件非常困难的事情,但我正在寻找的是一个记录按键的程序,以及按键之间需要多长时间。我所研究的所有内容都无法在后台录制,或者实际工作。

编辑:

import win32con, ctypes, ctypes.wintypes

def esc_pressed():
    print("Hotkey hit!")

ctypes.windll.user32.RegisterHotKey(None, 1, 0, 0xDD) # this binds the ']' key

try:
    msg = ctypes.wintypes.MSG()
    ctypes.windll.user32.GetMessageA
    while ctypes.windll.user32.GetMessageA(ctypes.byref(msg), None, 0, 0) != 0:
        if msg.message == win32con.WM_HOTKEY:
            esc_pressed()
        ctypes.windll.user32.TranslateMessage(ctypes.byref(msg))
        ctypes.windll.user32.DispatchMessageA(ctypes.byref(msg))
finally:
    ctypes.windll.user32.UnregisterHotKey(None, 1)

这允许程序在后台运行,但它会接受您绑定的输入字符,而不是拾取它。我仍然需要确保输入的角色到达焦点窗口。

1 个答案:

答案 0 :(得分:0)

您可能必须抓住按键,然后再次模拟相同的按键。尝试为此检查Python键盘模块。

编辑:添加了代码示例。

<div *ngIf='msg'>
  ...
</div>