Keydown winform non-déclenché avec boutons [Résolu]

Signaler
Messages postés
303
Date d'inscription
mardi 11 février 2003
Statut
Membre
Dernière intervention
24 avril 2009
-
Messages postés
303
Date d'inscription
mardi 11 février 2003
Statut
Membre
Dernière intervention
24 avril 2009
-
Allo !

Petite question simple: Dans mon cours de VB.Net, jdoit faire un jeu sur une interface Winform. Hors, j'en reviens au même problème que lorsque je développais en C# un jeu winform: Si je doit gerer les touches clavier, sa fonctionne sauf si je dépose des boutons, des menuitems, etc. Bref, si j'ajoute un bouton, mes évenements keydown du formulaire ne sont jamais déclenchés.

J'avais résolu le problème en me créant mes propres boutons depuis des picture box, mais en faisant ça, je doit gérer moi meme le dessin du bouton, et si j'ai besoin d'un bouton traditionnelk (style XP), la galère !

Bref, comment faire pour éviter ce probleme ?

Merci

Eric

2 réponses

Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
51
Salut,
Ces touches ont des fonctions particulières, à savoir de passer le focus au Control suivant.
Tu peux mettre ceci dans ton Control pour éviter ce comportement par défaut :

        protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Right:
                case Keys.Left:
                case Keys.Up:
                case Keys.Down: return true; // Handled manually !
                default: return base.ProcessCmdKey(ref msg, keyData);
            }
        }

<hr />
-Blog-
Messages postés
303
Date d'inscription
mardi 11 février 2003
Statut
Membre
Dernière intervention
24 avril 2009
5
Merci

Eric