Nombre uniquement

Résolu
Guillaume170194
Messages postés
53
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 novembre 2021
- 13 août 2011 à 18:57
Guillaume170194
Messages postés
53
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 novembre 2021
- 13 août 2011 à 23:55
Bonjour à tous

Je souhaite autoriser la saisi numérique uniquement dans tout mon formulaire ( 4 textbox). Je ne vois pas le code qu'il faut. J'ai fait des recherches mais je n'ai rien trouvé de concluant.

Merci de votre aide

6 réponses

ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
13 août 2011 à 20:04
Ben ...
Je pense qu'il te suffit d'utiliser par exemple l'évènement Change (puisque la saisie est modifiée à cette occasion) et de vérifier que cette saisie est numérique par vce qu'a montré RenField.

Tu dois également pouvoir utiliser l'évènement KeyPress et vérifier que la touche frappée correspond à un caractère numérique, du genre :
    Private Sub ta_textbox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Text1.KeyPress
      If e.KeyChar <> ChrW(Keys.Back) Then ' pour accepter l'effacement arrière
      
        If (e.KeyChar.ToString >= "0" And e.KeyChar.ToString <= "9")  Then
          '..... c'est un caractère numérique ===>> tes instructions
        Else
          '.... ce n'est pas un caractère numérique ==>> tes instructions
          ' je ne connais pas du tout VBnet, mais je pense (à vérifier) qu'il
          ' suffirait de modifier alors la valeur de e (peut-être avec e=False ?)
          ' pour annuler l'effet de cette touche ?

        End If
      End If
    End Sub


Essaye déjà de te dépatouiller avec ça. Si tu n'y arrives toujours pas, il te faudra attendre l'aide d'un VBNettiste (que je ne suis pas).
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne intallée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
3
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
13 août 2011 à 20:22
Après un petit tour (par curiosité) sur la toile, il me semble que, pour annuler la touche, ce serait la valeur (True ou False) de e.Handled sur laquelle il faudra jouer

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne intallée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
3
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
13 août 2011 à 19:44
Bonjour,
Va voir la réponse donnée par Renfield dans cette discussion sur ce forum


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne intallée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
Guillaume170194
Messages postés
53
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 novembre 2021

13 août 2011 à 19:47
Oui j'avais déjà vu

Mais je veux le faire quand l'utilisateur tape au clavier
0

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

Posez votre question
Guillaume170194
Messages postés
53
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 novembre 2021

13 août 2011 à 23:51
Je viens de tester avec e.Handled. Cela fonctionne mais je peux quand même mettre des caractère spéciaux. Cela bloque que les lettres.
0
Guillaume170194
Messages postés
53
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
25 novembre 2021

13 août 2011 à 23:55
Erreur de ma part finalement cela fonctionne très bien
0