我试图让我的程序使用不同的按键来执行两个名为“pauseinit”和“startinit”的函数,即使pythongui不是焦点,也可以检测到这两个函数。 我的代码是:
class Keystroke_Watcher(object):
def __init__(self):
self.hm = HookManager()
self.hm.KeyDown = self.on_keyboard_event
self.hm.HookKeyboard()
def on_keyboard_event(self, event):
try:
if event.KeyID == 35: #End key
self.pauseinit()
finally:
return True
try:
if event.KeyID == 36: #Home key
self.startinit()
finally:
return True
def pauseinit(self):
print "pausing"
def startinit(self):
print "starting"
def shutdown(self):
PostQuitMessage(0)
self.hm.UnhookKeyboard()
watcher = Keystroke_Watcher()
PumpMessages()
“pauseinit”功能工作正常,并将“pausing”打印到控制台,但按Home键时“startint”根本不注册。有什么办法解决这个问题吗?谢谢。你知道吗
原来我只是个笨蛋。对于那些没有像我一样思考的人,我只是把第二个“如果”放进了“尝试”。你知道吗
相关问题 更多 >
编程相关推荐