python - Python - 获取原始鼠标输入
问题描述
我想使用 Python 从鼠标中读取原始数据(例如左信号、右信号),而与鼠标指针无关。我不想读取光标的位置,我想读取原始数据,类似于游戏的方式。我怎样才能做到这一点?我找不到任何支持它的库。
我正在使用 Windows。
编辑:澄清一下,当我说“左信号和右信号”时,我的意思是鼠标移动,而不是鼠标点击,编辑 2:我相信术语是我想要“鼠标增量”。这就是人们在 autohotkey 中的做法 - https://www.autohotkey.com/boards/viewtopic.php?t=10159 - 但我想要在 Python 中使用它。
编辑3:我应该提到这是在不断重置指针位置的游戏中,所以我不能使用指针位置的差异。这就是为什么我想要一个较低级别的 API。
解决方案
获取鼠标位置并比较两个事件。如果 x 轴值增大,鼠标向右移动,如果 x 轴值减小,鼠标向左移动:
from pynput.mouse import Listener
last_position = None
def on_move(x, y):
global last_position
if last_position:
if x > last_position:
print('mouse moved right')
elif x < last_position:
print('mouse moved left')
last_position = x
with Listener(on_move=on_move) as listener:
listener.join()
推荐阅读
- javascript - 多个 Ajax 请求相互等待运行
- python - Pandas groupby 值差异很小
- bash - 如何使用 shell 脚本获取文件中的最小值
- java - 如何强制 Tomcat 接受 DispatcherServlet url 映射,以编程方式配置?
- javascript - Javascript 更新变量
- android - Android studio intellisense 无法解析导入时的符号
- json - TypeError: JSON.stringify(...).then 不是一个函数 - React JS
- ios - 为网络请求动态传递值
- java - Android ImageView 两个宽度
- mathematical-optimization - Google OR-tools 是否支持使用多个 3rdparty 求解器并在运行时切换它们?