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 :

Filtrage des valeurs saisies dans un JOptionPane


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 38
    Points : 28
    Points
    28
    Par défaut Filtrage des valeurs saisies dans un JOptionPane
    Bonsoir,
    j'aimerais créer une classe qui s'occupe de filtrer l'ensemble des données saisies par l'utilisateur : que ce soit dans un JTextField ou dans un JOptionPane.

    J'aimerais interdire les espaces et certains caractères spéciaux (comme é,è, etc.)

    Par contre je ne vois pas du tout comment faire. Quelqu'un aurait-il une idée pour m'aider à démarrer ?

    Merci d'avance.

  2. #2
    Membre averti Avatar de aJavaDeveloper
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 248
    Points : 300
    Points
    300
    Par défaut
    Où filtrer ?
    As-tu déjà entendu parler du pattern MVC (Modèle, Vue, Contrôleur) ?
    Si ce n'est pas le cas, l'article suivant est très intéressant : http://baptiste-wicht.developpez.com...onception/mvc/.
    Si je te parle de ce pattern, c'est parce-que le "filtrage" des entrées de l'utilisateur se fait généralement au niveau du contrôleur.

    Comment filtrer ?
    Pour vérifier la consistance des entrées de l'utilisateur, tu peux utiliser des expressions régulières : http://cyberzoide.developpez.com/java/regex/.
    Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie.
    Confucius

  3. #3
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Peut-être que la classe JFormattedTextField pourrait t'aider et remplacer ton JTextField.

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 38
    Points : 28
    Points
    28
    Par défaut
    aJavaDeveloper : Merci, je connais ce pattern car je l'utilise actuellement. Mon soucis n'est pas de savoir où filtrer mais plutot comment filtrer
    Les expressions permettent-elles de vérifier sur un nombre indéfinis de charactères ? Car j'ai vu qu'une classe faisait cela mais j'ai l'impression que c'est pour des données fixes (exemple : date, prix, etc..). Cette classe est MaskFormatter.

    fr1man : Oui je pense que cela pourrait m'aider mais le problème c'est que je souhaite faire un truc assez générique. Qui puisse être utiliser dans normal quel type de saisie (JOptionPane, JTextField, JList, etc.) Et comme je le disais à aJavaDeveloper j'ai l'impression que cela ne s'utilise que pour des données d'une taille connu...

    En tout cas merci pour vos réponses si rapides. Je vais regarder les expressions régulières mais si quelqu'un à une autre idée je suis preneur

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 38
    Points : 28
    Points
    28
    Par défaut
    Je suis entrain de tester la méthode de fr1man car les expressions régulières ...
    Mais je voulais savoir si l'on pouvait permettre à l'utilisateur de saisir autant de caractères qu'il le souhaite ?

  6. #6
    Membre averti Avatar de aJavaDeveloper
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 248
    Points : 300
    Points
    300
    Par défaut
    Je suis entrain de tester la méthode de fr1man car les expressions régulières ...
    Les expressions régulières sont un moyen puissant de tester la validité des entrées de tes utilisateurs.
    Il suffit d'en comprendre la syntaxe (allez, un petit effort...).
    Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie.
    Confucius

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 38
    Points : 28
    Points
    28
    Par défaut
    D'accord mais à quel moment faire cette vérification ?
    Moi j'aimerais le faire pendant que l'utilisateur tape dans la zone de texte (un peu comme lorsque l'on crée un dossier et que l'on souhaite mettre ce caractère "<", windows sort alors un avertissement).
    Est ce que cette vérification, à l'aide des expressions régulières je parle, peut être faite pendant la saisie ?

    Merci en tout cas pour ton aide aJavaDeveloper

  8. #8
    Membre averti Avatar de aJavaDeveloper
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 248
    Points : 300
    Points
    300
    Par défaut
    Tu peux utiliser les expressions rationnelles et ce, quel que soit le moment auquel tu désires vérifier la consistence des données saisies par les utilisateurs.

    Si tu veux faire une vérification au cours de la saisie, tu peux peut être essayer de mettre un KeyBoardListener sur ta zone de texte...
    Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie.
    Confucius

  9. #9
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 38
    Points : 28
    Points
    28
    Par défaut
    Juste par curiosité la méthode contains des JOptionPane permet de filtrer la saisie ?

  10. #10
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 38
    Points : 28
    Points
    28
    Par défaut
    J'ai cherché sur le net des exemples de JOptionPane utilisant la méthode contains mais sans succès.
    Est ce que quelqu'un aurait déja utilisé cette méthode, si oui pourriez vous me donner un exemple simple d'utilisation ?
    Merci

Discussions similaires

  1. Renvoi à une macro des valeurs saisies dans un userform
    Par MPRIBOM dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 07/12/2014, 16h33
  2. Réponses: 1
    Dernier message: 08/09/2014, 19h29
  3. Stocker des valeurs saisies dans un JTextArea
    Par Erwan7374 dans le forum Composants
    Réponses: 1
    Dernier message: 12/05/2012, 14h55
  4. Réponses: 4
    Dernier message: 16/03/2010, 17h28
  5. Réponses: 7
    Dernier message: 07/05/2009, 13h09

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