Bonsoir !
J'aimerais traiter en direct les caractères rentrés par un utilisateur dans un JTextField. Après pas mal d'effort, j'arrive seulement à avoir la structure de mon action :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 private CaretListener actionParDefaut() { return new CaretListener() { public void caretUpdate(CaretEvent e) { try { int testValue = Integer.valueOf(tfNumTren.getText()).intValue(); if (testValue == 2){ tfNumTren.setForeground(Color.blue); else { tfNumTren.setForeground(Color.red); } } catch (Exception ex) { if (ex instanceof NumberFormatException) { tfNumTren.setForeground(Color.red); } } tfNumTren.repaint(); } }; }
J'ai plus ou moins repris ce code des créations de Toedter. J'arrive donc à changer en direct la couleur de mon JtextField.
Je voudrais maintenant bloquer la saisie de caractères autres que des chiffres, mais également récupérer la valeur de ce JTextField sans avoir à appuyer sur la touche "entrée".
Je pense que mon problème est que je ne comprends pas très bien l'usage du catch exception ici....
Merci pour votre aide
Pierro
Partager