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 :

Champs numérique dans TextBox


Sujet :

VB.NET

  1. #1
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut Champs numérique dans TextBox
    Bonjour,

    Pour n'autoriser que des champs numériques dans Form2 de mon programme j'utilise le code suivant:
    If IsNumeric(TextBox1.Text) = False Then
    TextBox1.Text = "0"
    MessageBox.Show("N'utiliser que des nombres et la virgule", "Avertissement", MessageBoxButtons.OK, MessageBoxIcon.Information)
    End If

    Cependant, j'ai un petit problème.
    Lorsque je clique sur le button de Form1 qui me permet d'aller sur Form2 j'ai le MessageBox qui apparaît. De même si je clique sur le button _ouvrir du formulaire

    J'avoue de pas bien comprendre.
    J'ai plusieurs Textbox et ont tous en valeur par défaut 0

    Quelqu'un petit m'aider.
    D'avance merci

  2. #2
    Membre éprouvé
    Homme Profil pro
    R&D imagerie 3D / prog embarquée
    Inscrit en
    Mars 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : R&D imagerie 3D / prog embarquée
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2007
    Messages : 417
    Points : 1 247
    Points
    1 247
    Par défaut
    Salut,

    Dans quel événement ce trouve ton bout de code?? TextBox1_TextChanged je suppose...
    Ton problème viens de l'intialisation du champ. A l'ouverture de ton formulaire le champ est intialisé. Soit à une valeur par défaut que tu as définie toi même par l'IDE ou par programmation, soit par l'initialisation d'une source de donnée type binding source. Quoi qu'il en soit une valeur y est attribué, donc le texte change, donc ta procédure est appelée.
    Ton erreur est dans la condition de ton if, tu doit rajouté une condition qui s'assure que ta fenêtre a fini de s'initialiser. Par exemple si tu utilise une base de donnees et un tableAdapter tu peux vérifié que ton table a bien fini de charger l'enregistrement courrant. Tu pourrais aussi utiliser une variable de classe, ou tout autre élément qui t'informe de l'état de la fenêtre.
    Si tu ne trouve rien de pertinant, tu peux toujours créer une variable de classe que tu initialise à true a la fin du chargement de la fenetre et tu change ta condition par un truc du genre:
    if initialised andalso isnumeric(textBox1.text) then...

    Bonne chance

  3. #3
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut
    Merci djuju pour ta réponse que je garde précieusement.
    J'ai repris mon programme et hier je devais commencer à fatiguer car je n'ai pas vu l'erreur qui étai pourtant très simple:

    2 de mes textbox avaient comme valeur par défaut un nombre décimal avec un point au lieu de la virgule. Donc effectivement lors de l'initialisation du formulaire, il y avait une erreur.

    Bonne continuation

  4. #4
    Membre éprouvé
    Homme Profil pro
    R&D imagerie 3D / prog embarquée
    Inscrit en
    Mars 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : R&D imagerie 3D / prog embarquée
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2007
    Messages : 417
    Points : 1 247
    Points
    1 247
    Par défaut
    Une dernière chose:

    Je met souvent ce bot de code à la modification d'un champ textBox numerique. Il permet à l'utilisateur d'utliser le point comme sépapateur décimal, et donc de taper ses chiffres directement sur le pavet numérique

    TextBoxX.Text = TextBoxX.Text.Replace(".", ",")
    TextBoxX.Select(TextBoxX.Text.Length, 0)

    La première ligne remplace le . par la ,
    Et la deuxième remet le curseur à la fin du texte pour permettre de continuer la saisie

    A+

  5. #5
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut
    Je n'ai qu'une chose à dire:

    MERCI djuju

  6. #6
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut
    Bonsoir à tous,

    djuju, si tu lis ce message, j'ai en fait un petit soucis.
    Je dois faire des calculs (sommes, division,...), seulement avec ta méthode et les virgules ces calculs ne se font plus.

    Peux-tu m'aider?

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

Discussions similaires

  1. [WD-2010] saisie numérique dans Textbox
    Par yalefe dans le forum Word
    Réponses: 1
    Dernier message: 27/03/2011, 21h58
  2. [XL-2003] valeur numérique dans TextBox
    Par Sécateur dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2010, 17h13
  3. champs numériques dans un recordset
    Par icoons dans le forum VB.NET
    Réponses: 5
    Dernier message: 14/02/2007, 11h36
  4. Réponses: 2
    Dernier message: 04/05/2006, 11h34
  5. Champs numériques dans une base de données à exporter
    Par ulukahio dans le forum Autres langages
    Réponses: 18
    Dernier message: 16/03/2005, 10h50

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