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

AWT/Swing Java Discussion :

[debutant] comment tester un champ utilisant MaskFormatter


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 72
    Points : 35
    Points
    35
    Par défaut [debutant] comment tester un champ utilisant MaskFormatter
    salut,
    c'est mon premier post sur le forum, et je suis ravi de me joindre à vous.
    j'ai du mal à tester un champ de texte pour savoir s'il est vide ou non. en fait c'est un objet JFormattedTextField et j'ai utlisé MaskFormatter pour le filtre de saisie. mais quand j'essai de tester mon champ avec cette instruction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (chmp_txt.getText().equals(""))
      System.out.print("remplissez d'abord le champ");
    else
       System.out.print("Bionjour");
    en laissant le champ vide, cela m'affiche toujours bonjour, alors qu'il est sencé m'affiché le premier message.
    quelqu'un peut me dire pourquoi mon test ne marche pas ?
    merci

  2. #2
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Bonjour,
    Ce n'est pas evident comme ca de trouver l'erreur que tu aurais pu faire,
    que renvoi par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.print(chmp_txt.getText()) ?
    Sinon, si je peux te donner un conseil, dans ton test, il est preferable de tester aussi la null-ité de chmp_txt.getText() car si chmp_txt.getText() = null, lorsque tu fais chmp_txt.getText().equals("") tu auras une exception.

    ceci revient alors à ecrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (chmp_txt.getText() == null || chmp_txt.getText().equals(""))
     System.out.print("remplissez d'abord le champ");
    else
     System.out.print("Bonjour");

  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 72
    Points : 35
    Points
    35
    Par défaut
    merci zorm pour ta reponse, mais j'ai essayé d'utiliser ta methode en testant egalement la nullité de chmp_txt.getText(), rien ne se produit il prend toujours en compte le champ vide.
    aussi l'instruction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      System.out.print("Test "+chmp_txt.getText())
    renvoi le texte "Test" suivi du vide, c'est à dire rien ne s'affiche après la chaine Test.

  4. #4
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Alors la, c'est vraiment bizarre.

    Tu peux aussi essayer ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (chmp_txt.getText() == null || chmp_txt.getText().length()==0) 
    System.out.print("remplissez d'abord le champ");
    else
     System.out.print("Bonjour");

  5. #5
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Points : 1 241
    Points
    1 241
    Par défaut
    salut,
    est-ce que par hasard le JFormatedField ne contient pas des donnée(de format)? Ca pourrais venir de là. Essayes d'afficher son contenu pour voir.
    System.out.println(mon_text.getText());

  6. #6
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 72
    Points : 35
    Points
    35
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    est-ce que par hasard le JFormatedField ne contient pas des donnée(de format)?
    je ne comprend pas bien ce que tu veux dire par là, veux tu etre plus clair s'il te plait ?

    zorm, j'ai encore essayé avec chmp_txt.getText().length()==0

    toujours rien

  7. #7
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Points : 1 241
    Points
    1 241
    Par défaut
    ouvre un fichier .word avec le Bloc-notes et tu verra des informations de mise en page. Peut-être que ton JFormatedField enregistre aussi des informations.
    essaye de replacer getText() par ((String)chmp_txt. getValue()).equals("");
    Autrements:http://java.sun.com/j2se/1.4.2/docs/...TextField.html

  8. #8
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 72
    Points : 35
    Points
    35
    Par défaut
    merci pour vos reponses,

    ça marche avec le getValue()

    bien à vous

  9. #9
    Membre habitué
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38

    Informations forums :
    Inscription : Avril 2005
    Messages : 277
    Points : 143
    Points
    143
    Par défaut
    Il y aurait fallu nous mettre ton MASKFORMATTER, et aussi afficher CECI :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("Text '" + chmp_txt.getText() +"'");
    Afin d'être sur qu'il ne reste pas un petit espace a la fin que tu ne vois pas ! (on sent le vécu ... lol)

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

Discussions similaires

  1. [PHP-JS] Comment tester un champ avant de valider avec GET ?
    Par anis_el_madani dans le forum Langage
    Réponses: 2
    Dernier message: 09/04/2007, 20h37
  2. Réponses: 3
    Dernier message: 22/11/2006, 10h35
  3. Comment tester les champs facilement ?
    Par innova dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 07/11/2006, 15h29
  4. [debutant]comment tester un JTextField vide?
    Par gillou13 dans le forum Langage
    Réponses: 8
    Dernier message: 02/06/2006, 06h55
  5. [DREAMWEAVER 8] Comment tester les champs d'un formulaire
    Par steeves5 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 05/02/2006, 21h43

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