begin process at 2012 05 29 06:37:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

GUI

 > 

évenement clavier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

évenement clavier

lundi 24 septembre 2007 à 11:52:27 | évenement clavier

fignon

Bonjour à tous,
Je suis en train de développez une application ou j'aurais besoin d'éxecuter une action lorsque la touche entrée est enfoncée. J'ai utiliser le code suivant pour tester son bon fonctionnement :

lundi 24 septembre 2007 à 11:59:12 | Re : évenement clavier

fignon

Désolé pour l'erreur de manip mais voici la suite de mon premier post :

case WM_KEYDOWN:
                              
                     switch(wParam)
                     {
                             case 0x0D : MessageBox( HWND_DESKTOP, "Attention ", "Avertissement", MB_OK|MB_ICONWARNING);    
                    break ;
                     }       
                   
Cela fonctionne mais uniqument au lancement du programme.
Dès que j'appuie sur un bouton ou effectue une autre action le WM_KEYDOWN n'est plus "vu" par le programme.
Sauriez vous d'où provient cette erreur ?

lundi 24 septembre 2007 à 13:02:26 | Re : évenement clavier

juju12

Oui quand tu sélectionnes un contrôle tu lui donne le focus clavier et donc l'événement est traité par la wndproc du contrôle. Pour récupérer quand même l'appui sur une touche tu dois sous-classer le contrôle (lui donner une nouvelle fonction WndProc, se fait avec SetWindowLongPtr et GWLP_WNDPROC, et CallWndProc pour rappeller l'ancienne), regarde MSDN ou SDK pour plus d'infos.
lundi 24 septembre 2007 à 13:50:43 | Re : évenement clavier

omnia

Salut, sinon tu peux affectuer aussi par les hook clavier.

ciao et bon codage.
lundi 24 septembre 2007 à 19:16:25 | Re : évenement clavier

racpp

Administrateur CodeS-SourceS
Salut,
Comme expliqué par juju12, ta fenêtre cessera de recevoir WM_KEYDOWN car elle n'a plus le focus. Ce dernier est passé dans un de tes controles. C'est tout à fait normal. Si tu veux intercepter juste la trouche Entrée, tu n'aura besoin ni de sous-classement ni de hook. J'ai déjà répondu à ce genre de questions plusieurs fois dans ce forum:
http://www.cppfrance.com/infomsg_CASE-WM_KEYDOWN-MARCHE-PAS-QUAND-JE-SUIS-DANS_998943.aspx



Cette discussion est classée dans : clavier, évenement


Répondre à ce message

Sujets en rapport avec ce message

Problème de langue... [ par goldocrack ] Ce n'est pas vraiment un pb de programmation mais c très génant : le logiciel que j'utilise est Turbo C (sous DOS) et d'un coup d'un seul il a choisi Bloquer/debloquer le clavier via un bouton [ par zniko ] Bonjour,j'aimerai savoir comment bloquer le clavier par interface a l'aide d'un bouton (C++ BUILDER)j'ai trouvé un code source en Delphi mais je n'arr gestion du clavier [ par Myts ] SalutJe programme sous TC++ (turbo c++) sous dos.Et j'ai un probleme concernant la gestion du clavier.Mon jeux, prochainement sur ce site, doit effect gestion du clavier avec Glut [ par spirit ] salut à tous,je sais gérer les fonctions glutKeyboardFunc et glutSpecialFunc mais je n'arrive pas à détecter la combinaison de touches "Ctrl+A" alors raccourcis clavier [ par denver ] Bonjour, tout d'abord merci a tous pour l'aide que vous apportez a des ignorants comme moi!! :)bon voila mon probleme:mon prog en c++ doit coller une raccourcis clavier [ par denver ] Bonjour, tout d'abord merci a tous pour l'aide que vous apportez a des ignorants comme moi!! :)bon voila mon probleme:mon prog en c++ doit coller une clavier : La touche Windows et la touche alt [ par bily ] Vegeta :-)Salut,je voudrais savoir comment a l'aide d'un boutton bloquer et debloquer la touche wndows en esperant que son raccourci "ctrl+echap" soie IMPORTANT CLAVIER WINDOWS BLOQUER [ par bily ] Vegeta :-)Salut,je voudrais savoir comment a l'aide d'un boutton bloquer et debloquer la touche wndows en esperant que son raccourci "ctrl+echap" soie interuption de clavier [ par xav42 ] Bonjour, je suis étudiant et à mon iut on utilise turbo c++ qui date un peu mais bon... Voici mon probleme : j'ai un projet pour la fin de l'annee: f interuption de clavier [ par xav42 ] Bonjour, je suis étudiant et à mon iut on utilise turbo c++ qui date un peu mais bon... Voici mon probleme : j'ai un projet pour la fin de l'annee: f


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,420 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales