Delphi:Touche clavier pour activer un bouton
linkcr15
Messages postés
362
Date d'inscription
Statut
Membre
Dernière intervention
-
play92 -
play92 -
Bonjour,
Je suis en train de créer un programme en Delphi. Je souhaite programmer un bouton du clavier (genre F11) qui effectuerai une action dans mon programme même si mon programme n'est pas en premier plan. Est-ce que cela est possible? Si oui, comment le faire svp?
Merci d'avance pour vos réponses!
Je suis en train de créer un programme en Delphi. Je souhaite programmer un bouton du clavier (genre F11) qui effectuerai une action dans mon programme même si mon programme n'est pas en premier plan. Est-ce que cela est possible? Si oui, comment le faire svp?
Merci d'avance pour vos réponses!
A voir également:
- Delphi:Touche clavier pour activer un bouton
- Delphi 7 - Télécharger - Langages
- Bde delphi - Télécharger - Édition & Programmation
- Delphi 7 serial number - Forum Delphi
- Delphi ds150e reprogrammation moteur pdf ✓ - Forum Delphi
- Main.exe delphi - Forum Linux / Unix
5 réponses
Bonjour, linckrc15
Je ne sais pas si depuis tu as trouvé une réponse , mais au cas-ou voici une solution. Dans un TIMER tu mets :
If GetAsyncKeyState(122)<>0 then ' ta commande '; //122=F11
Règle l'Inteval du timer à 200 pour une réaction rapide et voila ça marche même si ton appli n'a pas le focus.
Je ne sais pas si depuis tu as trouvé une réponse , mais au cas-ou voici une solution. Dans un TIMER tu mets :
If GetAsyncKeyState(122)<>0 then ' ta commande '; //122=F11
Règle l'Inteval du timer à 200 pour une réaction rapide et voila ça marche même si ton appli n'a pas le focus.
Rien n'est impossible, mais ça c'est pas très simple...
Je crois que le seul moyen c'est de mettre un hook clavier en place, via SetWindowHook avec Wh_Keyboard et une KeyboardProc...
Je crois que le seul moyen c'est de mettre un hook clavier en place, via SetWindowHook avec Wh_Keyboard et une KeyboardProc...
Je vais essayer d'être plus clair :
La fonction SetWindowHook sert à insérer une procedure dans la chaine des procédures appelées lors d'un évènement, dans le cas présent un évènement clavier, donc à chaque frappe d'une touche du clavier, quelque soit l'application focus, la procédure que tu met en place est appelée, puis celle-çi appelle la suivante etc...
Définition de SetWindowHookEx :
Tu trouveras cette définition dans le win32sdk...
La fonction SetWindowHook sert à insérer une procedure dans la chaine des procédures appelées lors d'un évènement, dans le cas présent un évènement clavier, donc à chaque frappe d'une touche du clavier, quelque soit l'application focus, la procédure que tu met en place est appelée, puis celle-çi appelle la suivante etc...
Définition de SetWindowHookEx :
HHook SetWindowHookEx( int idHook, // type de hook = Wh_Keyboard HOOKPROC lpfn, // adresse de la procedure à appeler HINSTANCE hMod, // handle de l'application (Application.Handle) DWORD dwThreadId // Handle du thread de la procedure- tu peux mettre 0 );
Tu trouveras cette définition dans le win32sdk...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question