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

VB.NET Discussion :

Interdire caractères numériques dans un TextBox [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 3
    Par défaut Interdire caractères numériques dans un TextBox
    Salut à tous, je suis sur un projet en VB.NET depuis un certains temps (je travaille sur Visual Studio 2013 Express pour le Web), j'arrive à la phase finale et j'aimerais rajouter qq ajustements.

    J'ai plusieurs TextBox, de types Nom, Prénom, etc... et j'aimerais empêcher l'utilisateur d'entrer des valeurs numériques, pour qu'il ne mette que des caractères, ou bien simplement une petite fonction pour vérifier si les données des Textbox sont des valeurs numériques ou non. Je sais que faire l'inverse est assez simple mais bon ^^

    Si vous avez des idées ce ne serait pas de refus. Merci à vous

  2. #2
    Membre expérimenté
    Homme Profil pro
    Developpeur
    Inscrit en
    Février 2013
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Février 2013
    Messages : 180
    Par défaut
    Bonjour,

    A mon humble avis le premier lien d'une recherche google aurait pus te donner la réponse.
    sinon tu peut regarder les evenement de tes textbox et prendre par exemple un event BeforeOnChange (je n'ai pas les nom exacte en tête mais ça devrais y ressembler)
    ensuite dans l'event tu test si ton caractère est un numéric pour pas.

  3. #3
    Membre émérite

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Par défaut
    Salut

    peut être ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
            TextBox1.ReadOnly = False
            If e.KeyChar >= "0" And e.KeyChar <= "9" Then
                TextBox1.ReadOnly = True
            End If
        End Sub

  4. #4
    Membre émérite

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Par défaut
    plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
            If e.KeyChar >= "0" And e.KeyChar <= "9" Then
                e.Handled = True
            End If
        End Sub

  5. #5
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Ce sujet a déjà été traité plusieurs fois sur le forum .......

    Cela devrait t'intéresser : http://www.developpez.net/forums/d14...s/#post7900583
    ..... encore faut-il être de nature curieuse ou enclin à vouloir parfaire ses connaissances....

    PS : il faudra remplacer le pattern regex pour n'autoriser que les caractères alphabétiques et symboles (donc interdire les caractères numériques) !

    ++

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Par défaut Empêcher la saisie de valeurs numérique
    Pour empêcher l'utilisateur de saisir des valeurs numériques dans un texbox nom par exemple,voici ce que je te propose:
    D'abord,tu crée un tableau (peu importe le nom: soit x par exemple) de type Char avec les valeurs numériques de 0 à 9.
    Ensuite,sur le textbox, tu devras rechercher la propriété keypress (dans la partie événements) et tu doubles clique là-dessus.tu seras amené dans la partie code,et là,tu crées une condition si pour dire que si ton tableau x contiens (en utilisant le mot contains) e.keychar alors (tu écris) e.handled = true.
    Je sais que cela peut te sembler bizarre mais je voulais t'expliquer un peu avant de te montrer un exemple concret.
    Exemple: ma textbox a pour nom textbox1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim interdiction() As Char = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}
        Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
            If interdiction.Contains(e.KeyChar) Then
                e.Handled = True
            End If
        End Sub
    Résultat : l'utilisateur ne peut plus écrire des chiffres (des valeurs numériques)
    NB: voici la photo de la propriété keypress (en bleu à droite) qui se trouve dans la partie event(évènement):
    Nom : keypress.jpg
Affichages : 2117
Taille : 94,8 Ko

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 3
    Par défaut
    Le problème c'est que je n'ai pas cet événement sur ma version ^^'

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 31/03/2013, 20h28
  2. Réponses: 2
    Dernier message: 08/07/2008, 11h50
  3. Convertir une chaîne de caractère (saisie dans un textbox) en décimal
    Par sab_etudianteBTS dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 23/09/2007, 21h17
  4. Interdire un espace dans une TextBox
    Par Ribéry dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 08/06/2006, 18h00
  5. [MFC]Saisie Numérique dans un TextBox
    Par torNAdE dans le forum MFC
    Réponses: 1
    Dernier message: 09/05/2006, 06h47

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