Evenement clavier sur application en arrière plan [Résolu]

Signaler
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
-
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
-
Bonjour à tous,

Et bien voila, j'ai une petite application qui tourne en arrière plan (icone en barre de notification) et je souhaiterais que les utilisateurs puissent déclencher une fonction d'impression d'écran via "Ctrl+F12", suivi de l'enregistrement du PNG


Private Sub EventKey(ByVal sender As Object, ByVal e As _
System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

Select Case e.KeyData

Case (Keys.Control Or Keys.F12)
Call FunctionF12()

End Select
End Sub

Le truc, c'est que l'application se trouve en "Hide" et que celle-ci ne voit alors pas l'évenement clavier!

C'est certainement une histoire avec "Handles Me.KeyDown", mais je cale!


Auriez-vous une idée?

3 réponses

Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
Bonsoir,

Pour faire ce que tu cherches, je pense que tu devras t'intéresser au hook du clavier.
(le net est très fourni à ce sujet "'hook keyboard")
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
Bonjour, NHenry,
Je me servirais dans un tel cas personnellement de la fonction RegisterHotKey de la librairie User32 de l'API DE WINDOWS.
Et pour éviter qu'elle n'interfère sur d'autres fenêtres, je l'utiliserais avec une expression conditionnelle.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
1
Bonsoir,

NHenry, cela fonctionne tres bien. Je vais tout de même étudier la proposition d'UCFoutu.

Merci à tous