GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erhalten Sie Mausdeltas mit Python! (unter Linux)

Die Daten aus dem Eingabesystem kommen als Strukturen heraus, nicht als einfache Ganzzahlen. Das Mäusegerät ist veraltet, glaube ich. Die bevorzugte Methode sind die Ereignisgeräteschnittstellen, wo auch die Mauseingabeereignisse (und andere) erhalten werden können. Ich habe einen Code geschrieben, der dies tut, das Event.py-Modul. Sie können das verwenden oder von dort aus beginnen.


Ich verwende ein einfaches Gerät und habe keinen Zugriff auf X oder ... daher funktioniert event.py nicht.

Hier ist also mein einfacherer Dekodierungscodeteil, der von "veraltet" '/dev/input/mice' zu interpretieren ist:

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();

Linux
  1. Simulieren des Key Press-Ereignisses mit Python für Linux

  2. So erstellen Sie einen Benutzer unter Linux mit Python

  3. Wie erhalte ich die Anzahl der CPUs in Linux mit C?

  4. Erhalten Sie IPv6-Adressen in Linux mit ioctl

  5. Herunterfahren des Computers (Linux) mit Python

Bringen Sie podman unter Windows mit Linux zum Laufen

Installieren Sie Python 3 auf Redhat 8

Finden Sie Linux-Systemdetails mit Python

So konfigurieren Sie die Gaming-Maus unter Linux mit dem Piper GUI Tool

Verwenden des Watch-Befehls unter Linux

So erhalten Sie Hardwareinformationen unter Linux mit dem Befehl dmidecode