Les données du système d'entrée sortent sous forme de structures, et non de simples entiers. Le dispositif de souris est obsolète, je crois. La méthode préférée est les interfaces de périphérique d'événement, où les événements d'entrée de la souris (et d'autres) peuvent également être obtenus. J'ai écrit un code qui fait cela, le module Event.py Vous pouvez l'utiliser, ou commencer à partir de là.
Je suis sur un appareil de base et je n'ai pas accès à X ou ... donc event.py ne fonctionne pas.
Voici donc ma partie de code de décodage plus simple à interpréter à partir de "/dev/input/mice" "obsolète" :
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();