我正在编写一个脚本,它可以控制我的鼠标并在一个简单的无限循环中运行。
def main():
while True:
do_mouse_stuff()
因为鼠标控制,在python窗口中点击ctrl-c很痛苦,所以一直在寻找在windows中实现全局热键的方法。我也是一个相对的 Python 菜鸟,所以我可能错过了一个明显的答案。我发现的东西:
pyhk - 我得到的最接近的,但是这个模块出于某种原因(可能是我做错了什么)对我的电脑做了一些讨厌的事情,它引入了主要的鼠标滞后,完全输入锁定,我的各种东西'我不够聪明,无法应对。
pyHook - 遵循 tutorial ,工作正常,但无限运行的消息泵和我的 while 循环似乎专门运行,我还没有想出如何让它工作。
Another Method - 我也找到了这个方法,但是我和pyHook有同样的问题,try循环和我的while循环不能共存。
我试图弄清楚如何将我的循环集成到这些示例中,而不是维护一个单独的循环,但我一直无法做到这一点,这又可能是由于我的笨拙。有人能告诉我如何完成这项工作吗?
最佳答案
也许使用 msvcrt
?我不确定它是否是“全局的”,不幸的是,我现在无法对其进行测试,但这是一个检测 Escape 键的示例(取自 this question ),与您的键盘内容集成:
import msvcrt
def main():
while True:
do_mouse_stuff()
# Check if `Esc` has been pressed
if msvcrt.kbhit() and msvcrt.getch() == chr(27).encode():
aborted = True
break
关于python - 用于停止 Windows 脚本的全局热键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13854515/