Bonjour,
Je cherche le moyen le plus propre et le plus efficace pour intercepter la flèche vers le haut (VK_UP) et son "équivalent" shift + TAB.
La solution classique consiste en deux étapes :
- détecter l'appui sur une touche avec une fonction Evénement qui intercepte WM_KEYDOWN (256), puis à
- identifier la touche enfoncée ou la combinaison de touches enfoncées via la fonction ToucheEnfoncée.
Certains utiilsent aussi _EVE.WPARAM.
Le "surcharge" système est donc double :
- WM_KEYDOWN intercepte toutes les frappes clavier ;
- ToucheEnfoncée teste donc également toutes les frappes.
Idéalement, la fonction Evénement ne devrait réagir qu'à VK_UP.
L'idéal serait donc d'avoir une fonction globale du type :
Evénement(NomProcédure, "*.*", VK_UP)
Apparemment, le message VK_UP n'est pas traité par la fonction Evénement.
Je précise que les deux fichiers de constantes KEYCONST.wl et WINCONST.wl sont bien déclarés.
Curieux de savoir si Evénement n'utilisait que le fichier WINCONST.wl, j'ai enrichi ce dernier des valeurs VK_UP et VK_TAB, mais sans succès.
Confirmez-vous qu'effectivement VK_UP ne peut-être intercepté directement?
L'un(e) de vous dispose-t-il d'informations plus complètes sur le fonctionnement de la fonction Evénement et sur ce qu'elle intercepte ?
De même, à votre connaissance, Evénement peut-elle traiter une combinaison de messages autrement que via une combinaison du style ToucheEnfoncée(teShift) ET ToucheEnfoncée(VK_TAB) ?
Déjà merci
Hmgé






Répondre avec citation





Partager