我尝试使用pynput('pijnput'翻译成pain-pijnput)模块来捕获键盘。 这是我的代码:
class KeyPress:
def __init__(self,parent):
self.parent=parent
def on_press(self,key):
#keyboard.Listener.stop()
try:
self.parent.pressedKey=key.char
self.parent.pressedKeyCode=None
except AttributeError:
self.parent.pressedKey=key
self.parent.pressedKeyCode=key.value.vk
return False
def on_release(self,key):
if key == keyboard.Key.esc:
# Stop listener
return False
# Collect events until released
def run(self):
with keyboard.Listener(
on_press=self.on_press,
on_release=self.on_release,suppress=True) as listener:
listener.join()
我创建了一个子类,它将key和keyCode分配给主类中的属性 如果我运行它,它会正常工作,直到我按下一定数量的键,然后X崩溃,我得到这个错误。 一开始我在ipython+tmux中运行这个,但是在纯bash中也会发生这种情况。在
^{pr2}$我猜我创建了太多的线程,因为我没有终止它们。 虽然我认为“with”结构能解决这个问题? 这是对的吗?如果是这样的话,我该怎么做才能让它成功呢?在
提前谢谢
目前没有回答
相关问题 更多 >
编程相关推荐