à vous!
Voila j'utilise des jformattedTextField pour effecteur des filtre de ma bdd
en gros mes champs ds ma bdd sot limité à 50 caractère donc pour éviter les bug je voulias limiter directement la saisie au niveau de l'utilisateur
j'ai donc utiliser des jformattedTextfield avec un MaskFormatter pour limiter la saisie
dans ma classe Util j'ai mis le mask que j'utilise plusieurs fois ds mon appli:
ensuite dans mon init de ma jdialog j'ai:
Code : Sélectionner tout - Visualiser dans une fenêtre à part public static String MASK1 = "**************************************************";
public MaskFormatter mask = null;
et ensuite dans mon bouton de validation j'ai le code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 //JTextField public JTextField jTextFieldNom = null; try { mask = new MaskFormatter(Util.MASK1); jTextFieldNom = new JFormattedTextField(mask); } catch (ParseException ex) { }
mon problème c'est que mon mask ne semble pas bon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 String nom = jDialogUtilisateur.jTextFieldNom.getText(); if (nom.equals("") ){ JOptionPane.showMessageDialog(null, Erreur.ERREUR_CHAMP_VIDE, "Erreur", JOptionPane.ERROR_MESSAGE); } else { //traitement de mon info, intégration ds la bdd }
il ne rentre jamais dans mon cas nom="" même si je ne met rien (comme si par dégfault il y a le mask donc il y a quelque chose....)
moi je voudrais que mon mask agisse comme une saisie MAXIMUM et non une saisie obligatoire...
Comment faire? dois je utiliser autre chose que les mask?
d'avance
Partager