begin process at 2010 02 09 22:57:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Windows

 > 

UserControl

 > 

problème gestion touches


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

problème gestion touches

mercredi 22 août 2007 à 17:39:20 | problème gestion touches

soussous78

Bonjour tout le monde,
J'aurai besoin de savoir comment utiliser les touches clavier sur une form
j'en suis a la phase : essayer de comprendre
Je crée un évènement :
this.Form1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.appuyTouche);

et je crée la methode:
private void appuyTouche(object sender,System.Windows.form.KeyEventArgs e)
{
   MessageBox.Show(e.KeyCode.ToString());
}

aucun message n'apparait quand j'appuie sur une touche.
par contre si je crée un button et que je met l'evenement dedans, j'ai le nom de la touche appuyée sauf la touche entrée et les flêches de direction...

Quelqu'un pourrait m'expliquer comment faire pour que les touches fonctionnent pour sur la form et pour que toutes les touches soient prises en compte?

D'avance merci
mercredi 22 août 2007 à 19:40:11 | Re : problème gestion touches

MorpionMx

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Pour que ta form intercepte le KeyDown, il faut tu mettes sa propriété KeyPreview a true.

Pour les touches de direction, colle cette méthode dans le code de ton formulaire :


constint WM_KEYDOWN = 0x100;
constint WM_SYSKEYDOWN = 0x104;

protectedoverridebool ProcessCmdKey(refMessage msg, Keys keyData)
{
   constint WM_KEYDOWN = 0x100;
   constint WM_SYSKEYDOWN = 0x104;
   if ((msg.Msg == WM_KEYDOWN) || (msg.Msg == WM_SYSKEYDOWN))
   {
      switch (keyData)
      {
         caseKeys.Down:
            MessageBox.Show("Down");
            break;
         caseKeys.Left:
            MessageBox.Show("Left");
            break;
         caseKeys.Up:
            MessageBox.Show("Up");
            break;
         caseKeys.Right:
            MessageBox.Show("Right");
            break;
      }
   }
   returnbase.ProcessCmdKey(ref msg, keyData);
}



Mx
MVP C#
 

mercredi 22 août 2007 à 19:46:49 | Re : problème gestion touches

zatt

Bonjour,

this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyDown);

et la méthode:

private void Form1_KeyDown(object sender, KeyEventArgs e)

{
    
MessageBox.Show(e.KeyCode.ToString());
}

c'est tout :)

dimanche 2 septembre 2007 à 18:33:35 | Re : problème gestion touches

soussous78

ok ca marche merci beaucoup..
jeudi 27 mars 2008 à 14:12:29 | Re : problème gestion touches

soussous78

sinon quelqu'un aurait il une astuce pour ne pas avoir le temps d'arret a l'appui d'une touche?
Je m'explique. Lors de l'appui d'une touche, la touche se note, puis il y a une pause et ensuite si la touche est toujours appuyée, on a plusieurs fois la touche inscrite sur l'ecran.
Je voudrai savoir si on peut eviter se temps d'arret?
Merci d'avance


Cette discussion est classée dans : problème, gestion, crée, touche, touches


Répondre à ce message

Sujets en rapport avec ce message

bloquage de certaines touches [ par CracK ] je souhaiterai savoir comment désactiver la combinaison de touche " ctrl alt supr " " alt tab " "touche windows " etc ... si qq1 peut me renseigner , c#, touche du clavier [ par stiley1 ] salut , j'ai 3 boutons (btn1, btn2, btn3)je voudrais associer tes touches du claviers à ces boutons(touches raccourcies)echap=btns, entree=btns et z=b (c#) Problème gestion d'évents de control ajoutés "en live" [ par alienatyon ] Bonjour à tous et à toutes.Je suis entrain de développer une application en c#, dans laquelle j'ajoute des contrôles (labels et boutons) "en live" (pl Gestion du clavier en C# [problème] [ par alncool ] Voila j'ai une application à réaliser qui utilise les différents appuis sur des touches définies du clavier pour executer différents traitements. Dans c# - gestion de records [ par 2LITI1 ] Bonjour à tous, Je suis en train de faire un petit jeu en c#, et, après plusieurs heures de codes, j'ai un problème que je n'arrive pas à résoudre. I Problème de clavier sous Visual Studio 2005 [ par bigflo93 ] Bonjour :)Tout d'abord, je tiens à m'excuser, car je sais pas si c'est le bon endroit pour demander l'aide qui va suivre. Mais je savais pas où poster problème de gestion de clavier et de souris [ par brunhoff ] bonjour dans un programme j'utilise un clavier visuel et l'utilisation du clavier "physique" pour pouvoir jouer à 2 mais dès que je clique sur le clav touches enfoncées et touches relachées ... [ par Thanos_the_yopper ] J'ai une classe dérivée de IMessageFilter pour intercepter les touches qui sont appuyées sur le clavier.J'ai donc défini une constante int WM_KEYDOWN Problème avec mainmenu [ par Kbitnik ] Bonjour à tous,je développe une application windows mais c'est moi qui crée mes controles (boutons...) donc j'ai choisie d'affecter None à la propriét capturer l'appui sur une touche sur tout une form [ par survcopt ] Bonjour, J'ai une form avec des boutons texbox combo .... Je voudrais faire comme un hook pour capturer l'appui sur le clavier de certaines touches. E


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,312 sec (3)

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