Comment détecter les clics de souris?
comment puis-je détecter les clics de souris sur Windows ? (XP/Vista/7).
par exemple, lorsque mon application est en cours d'exécution , il permet de détecter si l'utilisateur de cliquer sur quelque chose (pas sur que l'INTERFACE utilisateur de l'application, mais sur l'INTERFACE utilisateur de Windows). si oui , exécuter un autre processus.
Je ne sais pas si c'est possible , je suis en espérant que quelqu'un peut me donner quelques conseils.
Merci!
source d'informationauteur ETAN
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin d'écrire un hook de souris si vous voulez intercepter les clics de souris, le mouvement, la molette de la souris clics...etc.
C'est la seule façon autant que je sache, si vous souhaitez suivre l'activité de souris à l'extérieur de votre propre application. Vous devez importer le SetWindowsHookEx(...) en fonction de la User32.dll fichier si vous souhaitez installer un crochet. Elle implique l'interopérabilité (PInvoke) et vous aurez à importer (DllImport) certaines fonctions.
Voici un document officiel de Microsoft sur la manière d'atteindre cet objectif en C#:
Comment définir un Windows crochet dans Visual C# .NET
Je vais résumer ici, juste pour être complète, la réponse devrait le lien de mourir un jour.
De départ avec la fonction SetWindowsHookEx:
Maintenant, vous pouvez configurer votre crochet. Par exemple:
N'oubliez pas de le décrocher par la suite. Vous aurez besoin d'un autre DllImport pour cela:
Vous pouvez utiliser le HookProc délégué (MouseHookProcedure) pour capturer l'activité de souris. Cela implique une formation des trains pour la saisie des données.
N'oubliez pas d'appeler l'élément suivant dans la chaîne de crochet par la suite (CallNextHookEx)!
PS: Vous pouvez faire de même pour le clavier.
Windows mécanisme d'accrochage est ce que vous avez besoin pour travailler avec. Jetez un oeil à cet article: Le traitement Global de la Souris et du Clavier Crochets en C#
Tandis que Christophe Geers solution vous aide à capturer l'événement de la souris, il n'est pas de fournir une solution complète à la question.
Edward voulais savoir comment faire pour obtenir l'événement click.
Pour obtenir de l'événement de clic, utilisez la solution proposée par Christophe Geers.
Et d'ajouter/modifier les éléments suivants:
Tous vous avez besoin est une souris crochet. Il peut détecter le mouvement de la souris ou des clics. Vous pouvez télécharger la démo ici: C# mouse_hook_Demo
Lorsque vous appuyez sur la touche de la souris et de le relâcher, vous verrez l'événement sur la richtextbox.