[英]How to add hotkey in Python?
我正在为游戏制作一个机器人,我想在按下热键时调用 function。 我已经尝试了一些解决方案,但效果并不好。 这是我的代码:
def start():
while True:
if keyboard.is_pressed('alt+s'):
break
...
def main():
while True:
if keyboard.is_pressed('alt+p'):
start()
这种方式很稳定,但会导致延迟,我很难打字。
def main():
keyboard.add_hotkey('alt+p', start, args=(), suppress=True, trigger_on_release=True)
while True:
# waiting for the user to press hotkey
continue
据我所知,keyboard.add_hotkey 只返回 output,所以我无法在开始时停止循环 function。
有没有更好的解决办法?
虽然这对你来说可能会迟到,但如果他们发现这个可能会帮助其他人......
exit = false
def start():
exit = true
def main():
keyboard.add_hotkey('alt+p', start, suppress=True, trigger_on_release=True)
while not exit:
# put something here, you can't have an empty loop
keyboard.remove_hotkey('alt+p')
当调用 main 时,这将添加一个热键,当触发时,将运行 function 启动。 然后它将 go 放入 while 循环。 (请注意,除非您正在使用子处理,否则这将阻止其他一切继续进行,直到您离开循环)while 循环将运行直到exit = false
。 删除热键可能是个好主意,尽管您可能也有理由不这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.