当前位置: 首页 > 面试题库 >

使用Python获取鼠标增量!(在Linux中)

邰胤
2023-03-14
问题内容

我知道Linux在/ dev / input / mice中给出了9位2的补码数据。我也知道您可以通过/ dev /
hidraw0获得数据,其中hidraw是您的USB设备,可以从HID发出原始数据。我知道发送的数据是运动(位移)的增量而不是位置。另外,我还可以通过“
cat / dev / input / mice”查看乱码数据。我的问题是:

您能否使用Python语言告诉我如何读取此数据?我真的很喜欢以简单的整数形式获取该数据。但这已经证明很难。真正的问题是读取该死的数据。有没有办法读取位并进行位算术?(目前,我不担心与root用户相关的问题。请假定脚本在root用户中运行。)

(我的主要参考文献是http://www.computer-engineering.org/ps2mouse/)


问题答案:

我在基本设备上,无法访问X或…,因此event.py无法正常工作。

因此,这是我最简单的解码代码部分,可从“已弃用的”’/ dev / input / mice’进行解释:

import struct

file = open( "/dev/input/mice", "rb" );

def getMouseEvent():
  buf = file.read(3);
  button = ord( buf[0] );
  bLeft = button & 0x1;
  bMiddle = ( button & 0x4 ) > 0;
  bRight = ( button & 0x2 ) > 0;
  x,y = struct.unpack( "bb", buf[1:] );
  print ("L:%d, M: %d, R: %d, x: %d, y: %d\n" % (bLeft,bMiddle,bRight, x, y) );
  # return stuffs

while( 1 ):
  getMouseEvent();
file.close();


 类似资料:
  • 本文向大家介绍使用js获取鼠标坐标相关面试题,主要包含被问及使用js获取鼠标坐标时的应答技巧和注意事项,需要的朋友参考一下

  • 问题内容: 斯威夫特新手。 我在执行一项琐碎的任务时遇到了麻烦。我要做的就是 按需 获取鼠标光标的x,y坐标。我宁可 不要 等到鼠标移动事件触发后再抓住指针的坐标。 将不胜感激! 问题答案: 您应该看看NSEvent方法mouseLocation 编辑/更新: Xcode 11•Swift 5.1 如果您希望在应用程序处于活动状态时监视任何窗口上的事件,则可以添加与mouseMoved掩码匹配的L

  • 本文向大家介绍python点击鼠标获取坐标(Graphics),包括了python点击鼠标获取坐标(Graphics)的使用技巧和注意事项,需要的朋友参考一下 使用Python进行图像编程,要使用到Graphics库。下面列举出较常用的代码 接下来使用Graphics库进行编写 出现下面问题:name '_name_'is not defined.出现原因是下划线应该是两个(__'name'__)

  • 问题内容: JFreeChart中是否有一种方法可以从ChartMouseEvent中确定鼠标悬停在绘图空间中的x,y坐标?我尝试使用域十字线值,但这似乎不准确并且滞后于实际的鼠标事件。 谢谢, 杰夫 问题答案: 鼠标坐标相对于ChartPanel,因此您需要对其进行转换:

  • 问题内容: 我正在尝试使用jQuery在元素中获取鼠标的相对坐标。 我的代码似乎无法正常运行,并且没有控制台错误。 码: index.html ja.js(jQuery函数) 零件 我听说jQuery在反应方面表现不佳。我的语法正确还是完全有更好的方法? 谢谢。 问题答案: 正如其他人提到的那样,问题是当jQuery尝试附加事件侦听器时,react尚未将您的组件呈现给DOM。 您根本不需要jQue

  • 我正在学习关于LWJGL和OpenGL的3D游戏开发教程。在本系列中,讲师使用LWJGL2,而我使用LWJGL3和GLFW。在某个章节中,他使用的是LWJGL的输入实现,仅在LWJGL 2中可用,因此我不得不使用GLFW的回调系统。我能够为按键输入、光标移动和鼠标按钮输入添加输入功能,但当我尝试添加滚动回调时,似乎滚动方向的偏移量只返回-1和1,添加时,(第三人称)相机会无限地前后平移,其目的是为