IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Recuperer le mouvement de la souris (pb de débogage)


Sujet :

Windows

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 32
    Points : 19
    Points
    19
    Par défaut Recuperer le mouvement de la souris (pb de débogage)
    Bonjour, j'aimerais savoir comment récuperer le mouvement de la souris.
    Par exemple, quand l'utilisateur déplace sa souris, je voudrais récuperer une structure avec des valeurs de x et y correspondants aux valeurs de déplacement.

    La seule solution que j'ai trouvé c'est d'utiliser un hook de la souris mais après je ne peut plus déboguer le reste de mon application car ça bloque ma souris lorsque je met un point d'arret.

    J'ai essayé en utilisant 2 threads avec en 1er thread mon application et en 2eme thread le hook pour calculer les déplacement, mais meme probleme qu'avant : quand je met un point d'arret sur le 1er thread, le second s'arrête aussi donc le hook bloque et je ne peut plus utiliser ma souris.

    Donc mon probleme, c'est que soit j'ai loupé la fonction dans la doc pour récuperer la différence de mouvement de la souris et j'aimerais la connaitre dans ce cas (ou toute autre méthode permettant de la récuperer), soit il faut que je sache comment faire pour ne pas bloquer un thread lorsqu'un point d'arret est déclenché dans un autre thread de la meme application.
    (La premiere solution serait la mieux)

    Merci d'avance, j'espère que vous pourrez m'aider .

  2. #2
    Rédacteur
    Avatar de Neitsa
    Homme Profil pro
    Chercheur sécurité informatique
    Inscrit en
    Octobre 2003
    Messages
    1 041
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chercheur sécurité informatique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 041
    Points : 1 956
    Points
    1 956
    Par défaut
    Bonjour,

    Citation Envoyé par cdd59554 Voir le message
    Bonjour, j'aimerais savoir comment récuperer le mouvement de la souris.
    Par exemple, quand l'utilisateur déplace sa souris, je voudrais récuperer une structure avec des valeurs de x et y correspondants aux valeurs de déplacement.
    GetCursorPos() retourne la position du curseur de la souris en coordonnées par rapport à l'écran:

    http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx

    Il est possible de convertir les coordonnées écran en coordonnées client (c-a-d par rapport à une fenêtre précise) en utilisant ScreenToClient():

    http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx

    Tu peux aussi regarder au chapitre "Mouse Input" sur la MSDN:

    http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx

    En espérant que cela t'aide.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 32
    Points : 19
    Points
    19
    Par défaut
    Merci Neitsa, mais ce n'est pas vraiment ca que je recherche. Je voudrais récupérer le déplacement de la souris, pas du curseur. Par exemple il est posible de bloquer ou de confiner le curseur dans une zone de l'écran, et dans ce cas avec GetCursorPos() on ne peut pas récupérer ce déplacement de la souris puisque le curseur n'as pas bougé (meme principe quand le curseur est au bord de l'écran).
    C'est pour ca que la seule facon que j'ai trouvé de faire ca est d'utiliser le hook WH_MOUSE_LL. Et le probleme se pose au debogage car quand je met un breakpoint, je ne peut plus utiliser ma souris puisque tout les messages de la souris passent par le hook qui est justement interompu...

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 32
    Points : 19
    Points
    19
    Par défaut
    Bon j'ai résolu mon probleme, il fallait en fait modifier la valeur LowLevelHooksTimeout dans la clef du registre HKEY_CURRENT_USER\Control Panel\Desktop pour diminuer le temps d'attente maximal d'un hook. Comme ca, ma souris n'est plus bloquée quand je met un point d'arret. Je l'ai mis à 30 ms pour que ça soit fluide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX][IE 6] impossible de recuperer le focus avec la souris
    Par magnus2005 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/03/2009, 11h59
  2. Application client serveur : mouvement de la souris
    Par condor_01 dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 29/07/2006, 18h58
  3. recuperer les coordoonees de la souris (sans applet)
    Par magnus2005 dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 13/10/2005, 09h21
  4. [AWT]Limiter le mouvement de la souris
    Par Le prophete dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 31/08/2004, 09h59
  5. Mouvement de la souris au-dessus d'un contrôle
    Par Choupinou dans le forum MFC
    Réponses: 8
    Dernier message: 16/07/2004, 17h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo