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 :

[VB.NET][2.0]Changer le focus avec la touche Entrée [Trucs & Astuces]


Sujet :

Windows Forms

  1. #1
    Membre habitué Avatar de Angath
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    140
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2004
    Messages : 140
    Points : 174
    Points
    174
    Par défaut [VB.NET][2.0]Changer le focus avec la touche Entrée
    Bonjour à tous

    Mon problème me semble pas bien compliqué mais je bloque dessus.
    J'ai plusieurs textbox dans ma form (16 pour etre exact).

    Lors d'un appui sur la touche Entrée dans un TextBox, je dois donner le focus au TextBox suivant (comme le fait trés bien la touche Tab).

    Je test l'appui de la touche Entrée dans un gestionnaire d'événement commun à tous mes TextBox :

    Code VB.NET : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        Private Sub myKeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress, TextBox2.KeyPress,...
            Dim ctr As TextBox
            ctr = CType(sender, TextBox)
     
            If e.KeyChar = ControlChars.Cr Then
                ???
                Exit Sub
            End If
     
            If Not Char.IsDigit(e.KeyChar) And Not e.KeyChar = ControlChars.Back Then
                e.Handled = True
            End If
     
        End Sub

    Jusque là tout va bien, mais je sais pas quoi mettre à la place des ???
    J'ai essayer de faire :
    Code VB.NET : Sélectionner tout - Visualiser dans une fenêtre à part
    ctr.SelectNextControl(ctr, True, True, True, True)

    Mais ça marche pas
    J'ai aussi pensé faire un "Select case" sur le nom du TextBox et faire TextBoxXX.select(), ça marche mais c'est un peu bourrin et j'aimerais éviter.

    Des idées ?

    D'avance merçi

  2. #2
    Membre actif Avatar de DarkMolo
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    207
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2006
    Messages : 207
    Points : 277
    Points
    277
    Par défaut
    Salut,
    C'est Me.SelectNextControl(ctr,True,True,True,True) qu'il faut mettre, c'est à dire passer au control suivant de la form(l'ordre se fait selon le TabIndex de chaque control de ta feuille).
    Il se peut par exemple que tu aies placé les TextBox dans un panel ou autre conteneur qu'une Form, dans ce cas c'est MonPanel.SelectNextControl(ctr,True,True,True,True) qu'il faut mettre, et puis zut pour être à 100% sûr du coups fait un:
    ctr.Parent.SelectNextControl(ctr, True, True, True, True) , comme ça t'es tranquil .
    Certified SCJP 5.0 / SCWCD 5.0 / SCEA 5.0
    C'est une grande folie de vouloir être sage tout seul.
    Duc de La Rochefoucauld

  3. #3
    Membre habitué Avatar de Angath
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    140
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2004
    Messages : 140
    Points : 174
    Points
    174
    Par défaut
    Merçi bien

    Effectivement, j'avais mal compris la fonction .SelectNextControl. J'ai testé ca fonctionne bien

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

Discussions similaires

  1. Comment changer de focus avec les flèches du clavier ?
    Par pepito62 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 19/04/2013, 09h37
  2. Réponses: 4
    Dernier message: 04/09/2007, 08h51
  3. [HTML]Problème avec la touche "entrée" dans un formulaire
    Par WerKa dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/06/2007, 20h34
  4. Réponses: 9
    Dernier message: 05/11/2006, 13h16
  5. [C#] Changer le focus avec la touche return
    Par sblanc74 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 01/10/2003, 18h38

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