Question sur les TabPage et KeyPress

Résolu
crocket51 - 26 févr. 2013 à 17:12
 Utilisateur anonyme - 26 févr. 2013 à 20:16
Bonjour,
J'ai fait une fenêtre avec des TabPage et dans la TabPage2, j'ai des textbox et lorsque je saisie quelques choses dans une des textbox et que je valide sur entrée il vérifie si c'est un nombre.
Sauf j'ai un truc qui coince dans ce code car peu importe la touche il m'affiche la condition vraie.

Quelqu'un peut il m'aider...

Private Sub TabControl1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TabControl1.KeyPress

        Dim TabName As String

        TabName = TabControl1.SelectedTab.Name

        If TabName.Contains("TabPage2") Then
            If Keys.Enter Then
                MsgBox("Enter")
            Else
                MsgBox("Autre touche")
            End If
        End If



    End Sub

8 réponses

Utilisateur anonyme
26 févr. 2013 à 18:38
C'est un très mauvais choix que d'utiliser l'événement KeyPress lorsqu'il s'agit le lire le code de la touche pressée. Utilise plutôt KeyUp :
Private Sub TabControl1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TabControl1.KeyUp
    If e.KeyCode = Keys.Enter Then
       'ta gestion ici
    else
       'les autres touches ici
    end if
End Sub

Quand tu postes du code, utilise les balises de coloration de code (3eme icône en partant de la droite). Pense également à lire les solutions qui te sont faites sur tes autres sujets et d'y apporter une critique négative voire positive. Ceci permet aux autres utilisateurs d'y trouver des réponses. Et puis c'est aussi une certaine marque de respect envers l'aidant...
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
26 févr. 2013 à 17:53
Bonjour,
1) es-tu certain de ce la sélection faite n'est pas celle qui fait que la condition est vraie ?
2) question de curiosité personnelle :
Pourquoi passer par ce tremplin de nom du TabPage au lieu d'utiliser l'objet lui-même ?
Pourquoi pas, par exemple :
If TabControl1.SelectedTab Is TabPage2 then ...

(ce que je ferais personnellement, puisque les deux (selectedTab et tabpage2 sont un objet)) ?

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
Et ce code tu le mets où dans le TabControl1 ou le formLoad, ensuite je mets le Keys.enter ?

Merci pour tes réponses..
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
26 févr. 2013 à 18:59
Je relis = == >>
J'ai fait une fenêtre avec des TabPage et dans la TabPage2, j'ai des textbox et lorsque je saisie quelques choses dans une des textbox et que je valide sur entrée il vérifie si c'est un nombre.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
26 févr. 2013 à 19:11
Bonsoir ucfoutu,

Question sans rapport avec le code montré.
Je laisse ce fil en plan

Bonne soirée à toi.
0
Utilisateur anonyme
26 févr. 2013 à 19:24
Sauf j'ai un truc qui coince dans ce code

Ca coince aussi sur l'autre forum
0
Je ne savais pas qu'il était interdit de chercher sur d'autres forums VB
0
Utilisateur anonyme
26 févr. 2013 à 20:16
Non, rien ne te l'interdit
0
Rejoignez-nous