Comment désactiver une touche activée par un KEYDOWN?
Je m'explique:
Je voudrais pouvoir faire une multisélection dans une DBGrid sans obliger l'utilisateur à appuyer à la fois sur un élément de la grille et sur la touche Ctrl (mon appli doit en effet tourner sur PDA).
J'ai donc coder sur le OnCellClick de la DBGrid ceci :
Code:
1 2
| keybd_event(VK_CONTROL,0,WM_KEYDOWN,0); //touche enfoncée
keybd_event(VK_CONTROL,0,WM_KEYUP,0);//touche relevée |
Pour forcer la désactivation, sur le OnExit du composant et sur le OnCLose du formulaire j'ai :
Code:
1 2
| if getkeystate(VK_CONTROL)= 1 then
keybd_event(VK_CONTROL,0,WM_KEYUP,0); |
Malgré tout, une fois que j'ai quitté mon application (que je teste sur un PC), la touche Ctrl reste "virtuellement" enfoncée... pas moyen de la désactiver et je suis a priori obligée de redémarrer mon poste.
Une idée? Merci !