【发布时间】:2021-02-05 11:53:35
【问题描述】:
我正在尝试锁定鼠标指针,但仍会收到鼠标移动。我通过在pynput.mouse.Listener 中添加suppress=True 几乎实现了这个目标:
def on_move(x, y):
print(x, y)
with pynput.mouse.Listener(on_move=on_move, suppress=True) as listener:
listener.join()
问题是当我开始移动鼠标时得到这样的输出:(x 在左边,y 在右边)
681 551
681 550
681 550
682 550
681 551
681 550
682 550
682 551
但是想像这样接收鼠标的移动:
1 0 (mouse moved one pixel right)
0 -1 (mouse moved one pixel up)
-1 1 (mouse moved one left and one pixel down)
1 1 (mouse moved one right and one pixel down)
...
当鼠标连续向右移动时,输出是这样的:
524 364
525 364
524 364
525 364
524 364
525 364
524 364
525 364
这意味着像这样x - prev_x这样使用之前的x作为变量将不会生效,并且会打印出来:
1 0
-1 0
1 0
-1 0
1 0
-1 0
不是这个:(我想要的输出)
1 0
1 0
1 0
1 0
1 0
1 0
【问题讨论】:
标签: python mouseevent mouse pynput