Bonjour,
Est-il possible de faire un filtre sur un TextField afin de limiter la frappe de l'utilisateur à 5 caractères et si possible 5 chiffres???
Merci!
Version imprimable
Bonjour,
Est-il possible de faire un filtre sur un TextField afin de limiter la frappe de l'utilisateur à 5 caractères et si possible 5 chiffres???
Merci!
salut
tu peux limiter le nbre de caractéres dans le constructeur de JTextField.
Code:
1
2
3 JTextField entree = new JTextField(5); //cham de taille5,i nitialementvide
Helas, le constructeur de JTextField prenant comme paramètre un int permet de spécifier le nombre de colonnes du JTextField mais pour l'affichage (autrement dit la taille) et non pas de restreindre le nombre de caractères entrés... Ce que je cherche à réaliser serait l'équivalent d'un masque de saisie Access!Citation:
tu peux limiter le nbre de caractéres dans le constructeur de JTextField.
Dans ce cas, l'objet MaskFormatter est la solution :wink:
http://java.sun.com/j2se/1.4.2/docs/...Formatter.html
Pourrais-je avoir un petit exemple d'utilisation, car je voudrais restreindre un champ à 5 chiffres mais après application du masque, je ne peux rien rentrer...
Voici mon code:
Code:
1
2
3
4
5
6
7
8 try{ cpMask = new MaskFormatter("#####"); cpMask.setValidCharacters("0123456789"); System.out.println(cpMask.getValidCharacters()); } catch(ParseException pe){pe.printStackTrace();} cpPers = new JFormattedTextField(); cpMask.install(cpPers);
Code:
1
2
3
4
5
6
7
8
9
10 try { cpMask = new MaskFormatter("#####"); // définition du masque cpPers = new JFormattedTextField(cpMask); // application au champ texte cpPers.setValue("00000"); // valeur initialement affichée } catch (ParseException e) { e.printStackTrace(); }
Ca marche super! Merci bien!