Keydown winform non-déclenché avec boutons

Résolu
ricklekebekoi Messages postés 303 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 24 avril 2009 - 24 févr. 2007 à 23:22
ricklekebekoi Messages postés 303 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 24 avril 2009 - 24 févr. 2007 à 23:50
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

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
24 févr. 2007 à 23:35
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-
3
ricklekebekoi Messages postés 303 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 24 avril 2009 5
24 févr. 2007 à 23:50
Merci

Eric
0
Rejoignez-nous