Détecter un clic de souris dans tout l'écran (non seulement le form) ?

Résolu
MrThorr00
Messages postés
9
Date d'inscription
mercredi 3 mai 2006
Statut
Membre
Dernière intervention
2 mars 2009
- 21 févr. 2009 à 20:09
MrThorr00
Messages postés
9
Date d'inscription
mercredi 3 mai 2006
Statut
Membre
Dernière intervention
2 mars 2009
- 1 mars 2009 à 19:27
Bonjour,

Je suis en train de développer une petite application qui lance un chrono et qui enregistre le temps du chrono a chaque clic de souris.

Le problème est que je n'arrive pas a récupérer le clic quand la souris n'est pas dans le form. (le but serrai de lancer le chrono et de réduire la fenêtre, affin de pouvoir continuer a utiliser le pc durant le chronométrage...).

Pourriez-vous m'aiguiller ?

Je développe en Visual Basic avec Visual Studio 2008.

Merci d'avence !

5 réponses

MrThorr00
Messages postés
9
Date d'inscription
mercredi 3 mai 2006
Statut
Membre
Dernière intervention
2 mars 2009

1 mars 2009 à 19:27
Bonjour,

Merci pour vos réponses,  j'ai finalement utilisé les hook pour régler mon problème, je viens de poster mon code : http://www.vbfrance.com/codes/UTILISATION-HOOK-SOURIS-CLAVIER-VB-NET_49399.aspx

Cordialement
3
Londonic
Messages postés
298
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
26 septembre 2009

22 févr. 2009 à 10:56
Ca fait déjà un moment que je me pose la même question, et c'est en refaisant le FolderBox: j'ai oublié le nom de la boite de dialogue de selection de dossier de la boite à outils, c'est en refaisant la boite de dialogue qui reste toutjours en dessus des autres, et qu'on peut pas l'ouvrir sur le dossier qu'on veut, c'est donc en refaisant cette boite de dialogue, que j'ai réalisé l'aspect purement didactique du basic. J'ai aussi vaguement pensé qu'on pourrait légérement remettre en cause la modularité des objets visuels de la programmation d'interfaces utilisateur qui prend sa source dans le  point de la location de la mémoire d'écran à intervalles réguliers. Le mieux serait sans doute d'élaborer un gestionnaire de processus à partir des interruption Bios de la souris, et d'y traiter Windows comme un sous-programme de mise en forme , de gestion de périphériques et de réseaux. Ca ferait un beau chrono!
0
MrThorr00
Messages postés
9
Date d'inscription
mercredi 3 mai 2006
Statut
Membre
Dernière intervention
2 mars 2009

22 févr. 2009 à 11:54
Bonjour et merci de votre réponse.

Une folderbox ne peut en aucun cas faire l'affaire puisque il s'agit d'un contrôle sur le form, et donc dés que on le réduit, il devient "inactif".

Pour la suite de votre message, j'avoue que je ne comprends rien.

Mais je suis sur une piste, qui serait de passer par un hook souris.

Cordialement
0
deleplace
Messages postés
40
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
2 mars 2009

22 févr. 2009 à 21:07
Je n'ai pas la solution pour VB2008
je programme en VB6
Il y a deux solutions
 la meilleure pas la plus simple
  c'est le créer un HOOK su la souris
  (détournement des interruptions souris par ton programme)
 la plus simple
  lancer un Timer qui lira l'état des boutons 64 fois pae seconde
 dans les 2 cas il faudra faire appel au API de Windows (User32.dll)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MrThorr00
Messages postés
9
Date d'inscription
mercredi 3 mai 2006
Statut
Membre
Dernière intervention
2 mars 2009

22 févr. 2009 à 21:25
Bonjour, et merci de votre réponse.

Je viens a l'instant de finir de résoudre ce problème.

J'ai utilisé une librairie provenant d'une appli en C# une fois adapté sa marche parfaitement : il s'agit de la méthode hook, qui finalement, en utilisant la bonne librairie est assez simple en .NET.

Dés que j'ai le temps, je fait un petit exemple et je le mets a disposition.

Cordialement
0