PyHook 取自函数

问题描述

我是 Python 的初学者,我一直在寻找一种方法来识别我已经完成的背景中何时按下键盘键。但是,我对 pyHook 库很不熟悉,尤其是它如何与函数配合使用。

我从另一个 Stack Overflow 帖子中获取了一些代码Detecting a keypress in python while in the background

我已经设法用它完成了大部分我想做的事情,但是我无法将 print() 消息保存到函数外部的变量中,以便我可以继续使用它。 我想将 OnKeyboardEvent 函数内的键变量保存到函数外的变量中:

import pythoncom,pyHook

def OnKeyboardEvent(event):

    key = [[79,"KP1"],[80,"KP2"],[81,"KP3"],[75,"KP4"],[76,"KP5"],[77,"KP6"],[71,"KP7"],[72,"KP8"],[73,"KP9"],[82,"KP0"],[83,"KPDot"],[28,1,"KPEnter"],[78,"KPPlus"],[74,"KPMinus"],[55,"KPStar"],[53,"KPFW"]]

    scanCode = event.ScanCode
    injected = event.Extended
    for x in range(len(key)):
        if scanCode == key[x][0]:
            if injected == key[x][1]:
                OnKeyboardEvent.y = key[x][2]
                key = (key[x][2])
                print(key)
                break
    return True
hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent
hm.HookKeyboard()
pythoncom.PumpMessages()

如果有人能帮我解决这个问题,我将不胜感激。我打算把这个程序变成一个音板,让我可以使用键盘键在后台播放音乐。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)