IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Tabulation dans une form avec entrée


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 20
    Points : 13
    Points
    13
    Par défaut Tabulation dans une form avec entrée
    Bonjour
    Après avoir fait testé mon application par les futurs utilisateurs, je me suis rendu compte que ceux-ci appuyaient systématiquement par réflèxe sur entrée pour passer d'une textbox à une autre.
    Forcément, comme je n'ai rien implémenté pour que ça le fasse, ils sont déçus...
    Donc je me demandais comment gèrer ça simplement car certaines de mes forms contiennent des groupbox et des tabcontrol et ça serait assez lourd de le faire par onglet ou par groupbox, donc est-ce possible de le gérer depuis la form uniquement sur le keypress ou keydown par exemple (j'ai fait des essais mais pas très concluants).
    Merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 12
    Points : 22
    Points
    22
    Par défaut
    il faut alimenter l'événement Keydown de ta form
    Mettre la propriété Keypreview de ta form à true
    et dans la procédure Keydown tu gére le caractère saisie pour "entrée"
    tu dois avoir un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if e.Keycode=Keys.enter
    tu dois pouvoir accéder à l'ordre de tabulation des éléments de ta form
    pour savoir à quel élément tu dois passer le focus

  3. #3
    Membre habitué

    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 285
    Points : 139
    Points
    139
    Par défaut
    Tu peux directement utilisé GetNextControl sur ton composant et faire un focus dessus !

    GetNextControl respecte l'ordre défini dans TabOrder ...

    Sinon, perso pour gérer ce cas, j'ai modifié la propriété KeyPreview de ma form pour la passé à Vrai. Et j'ai géré directement cela dans la fenêtre !

    Le hic de cette méthode est qu'elle n'est pas compatible avec tous les composants comme les boutons ...

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 20
    Points : 13
    Points
    13
    Par défaut
    Ok merci à vous deux! Inspiré par vos réponses voilà comment ce que j'ai mis sur l'évenement keydown après avoir mis la propriété keypreview de mon form à true :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    private void frmProject_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    		{
    			if(e.KeyCode == Keys.Enter)
    			{
    				SendKeys.Send("{TAB}");
    			}
    		}

  5. #5
    Futur Membre du Club
    Inscrit en
    Mars 2005
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Voici une façon de faire,...
    if (e.KeyChar == ((Char)Keys.Return))
    {
    GetNextControl((Control)sender, true).Focus();
    }

    Cela marche bien.

    Gilles

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] un objet bouge dans une forme avec c++builder 6
    Par Imene MI dans le forum C++Builder
    Réponses: 7
    Dernier message: 14/05/2015, 17h02
  2. Réponses: 2
    Dernier message: 30/09/2012, 21h10
  3. [AC-2010] Forme avec macro dans une forme avec bouttons de nav
    Par nico_fr83 dans le forum IHM
    Réponses: 0
    Dernier message: 15/05/2010, 20h48
  4. Gestion clavier dans une form avec dbgrid
    Par albedo dans le forum C++Builder
    Réponses: 3
    Dernier message: 25/04/2006, 15h42
  5. [C#] Travailler efficacement avec les panels dans une forme
    Par WwiloO dans le forum Windows Forms
    Réponses: 8
    Dernier message: 27/06/2005, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo