Modifier coordonnées souris en C/C++

cs_johnattan Messages postés 5 Date d'inscription mardi 5 février 2008 Statut Membre Dernière intervention 16 février 2014 - 7 mars 2008 à 11:22
cs_johnattan Messages postés 5 Date d'inscription mardi 5 février 2008 Statut Membre Dernière intervention 16 février 2014 - 8 mars 2008 à 01:30
Salut à tous !

Je souhaite savoir comment faire pour récupérer les coordonnées en cours de la souris et surtout pour les modifier.
Je suis en train de travailler sur un périphérique (tablette) qui m'envoit une position du stylet via le port COM, et j'aimerais utiliser ces coordonnées (x,y) pour les affecter à ceux de la souris. En gros, je veux faire une émulation souris de ma tablette.

Quelqu'un sait-il comment faire ?

Il faudra procéder comme suit et dans l'ordre :

1) d'abord récupérer les coordonnées en cours de la souris (souris au repos). Pour cette étape, je pense savoir comment faire  Je pense utiliser l'API Windows  "GetCursorPos()", ...
2) ensuite récupérer  les coordonnées envoyées par la tablette (via mon port COM).  Pour cette étape, je pense savoir comment faire aussi j'ai le driver et la doc de ma tablette 
3) et enfin (et c'est là où je bloque) il faudra modifier les coordonnées en cours de la souris et simuler un clic de bouton gauche

Merci de votre aide !

3 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
7 mars 2008 à 11:45
Citation, déjà :


"The SetCursorPos function moves the cursor to the specified screen coordinates. If the new coordinates are not within the screen rectangle set by the most recent ClipCursor function, Windows automatically adjusts the coordinates so that the cursor stays within the rectangle".


Pour déplacer le curseur de ta souris ...
0
cali70 Messages postés 71 Date d'inscription mercredi 29 septembre 2004 Statut Membre Dernière intervention 19 mars 2008
7 mars 2008 à 12:26
Salut, tu devrais trouver ton bonheur ici:

http://msdn2.microsoft.com/en-us/library/ms646260(VS.85).aspx   (Attention, fonction dépréciée mais marche quand même)

http://msdn2.microsoft.com/en-us/library/ms646310(VS.85).aspx  (La fonction que tu devrais utliser mais pas obligé)

Sinon... ptit Tuto ici:

http://tcharles.developpez.com/simul/

Je pense que tu devrais t'en sortir avec tout ca!
0
cs_johnattan Messages postés 5 Date d'inscription mardi 5 février 2008 Statut Membre Dernière intervention 16 février 2014
8 mars 2008 à 01:30
Merci "jmfmarques" et "cali70", c'est exactement ce que je voulais. En plus dans to tuto cali70, il y a un exemple que j'ai compilé et qui marche tout de suite. Je vais m'en inspirer pour faire quelque chose de plus évolué.

Encore une fois merci d'avoir répondu aussi vite et bien !
0
Rejoignez-nous