【发布时间】:2021-03-23 00:50:09
【问题描述】:
我的代码使用鼠标事件来发送消息,但我不知道如何停止使用 f1 键。我在Events()中没有找到像Listener()那样的stop()方法。
import pynput
import pyautogui
import time
from pynput import mouse
from pynput import keyboard
running = True
mouse_event = mouse.Events()
def on_press(key):
global running
if key == keyboard.Key.f1:
running = False
print('end')
return False
def msg():
mouse_event.start()
for event in mouse_event:
if running:
if isinstance(event,mouse.Events.Click):
if not event.pressed:
pyautogui.typewrite('hello world\n',interval=0.009)
else:
time.sleep(1)
return False
while 1:
print("Choose the desired option")
print("1. Message")
option = int(input("Option:"))
if option == 1:
running = True
with keyboard.Listener(on_press=on_press) as listener:
if running:
msg()
elif not listener.running:
time.sleep(2)
break
有没有办法通过按键来中断鼠标事件?
一种尝试是将方法作为 on_press 传递给 Events () 不起作用。
【问题讨论】:
标签: python-3.x pyautogui pynput