Python 单击一次pynput时双击
试图做一个程序,当你用pynput点击鼠标左键一次时,它会为你双击。我有下面的代码,但如果我运行代码,我的鼠标会出现故障并停止工作Python 单击一次pynput时双击,python,pynput,Python,Pynput,试图做一个程序,当你用pynput点击鼠标左键一次时,它会为你双击。我有下面的代码,但如果我运行代码,我的鼠标会出现故障并停止工作 from pynput.mouse import Listener, Button, Controller mouse = Controller() def on_click(x, y, button, pressed): if pressed == True: mouse.click(Button.left, 2) else:
from pynput.mouse import Listener, Button, Controller
mouse = Controller()
def on_click(x, y, button, pressed):
if pressed == True:
mouse.click(Button.left, 2)
else:
pass
with Listener(on_click=on_click) as listener:
listener.join()
除此之外,按“F10”的实现如何使1次单击的行为类似于双击,再次按“F10”将禁用它,因此1次单击的行为类似于1次单击是可能的?哦,我可能发现了你的问题, 两个可能的原因:
。然后它将鼠标。单击(button.left,2)
。但此代码也将在单击时调用。因此这将是一个无休止的循环。最后,您将发现您的鼠标将没有响应。因此,我认为您应该使用另一种方法来实现这一点
pynput
官方文档中,它似乎可以在macOS中使用(可能windows无法使用它。我还发现,如果我只使用鼠标。在我的PC中单击(Button.left,2)
,我的python将不会响应。(它无法停止)。也许你应该直接使用。按和。释放):
全局
变量来执行此操作。这里有一个使用pynput执行开关的最小示例。(如果不按F10,则不会打印模式处于打开状态,并且在再次按F10后也不会打印)
我不能使用鼠标。单击(Button.left,2)
。这会使我的鼠标无法工作。是的,我想这就是问题所在。但是这个函数在pynput的文档中。
# import win32api,win32con
from pynput.mouse import Controller
from pynput import keyboard
from pynput.keyboard import Key
mouse = Controller()
Mode = False
def on_press(key):
global Mode
if key == Key.f10:
if Mode:
Mode = False
else:
Mode = True
listener = keyboard.Listener(on_press=on_press)
listener.start()
while True:
if Mode:
print("Mode is on")