Bonjours alors tout d'abord, je ne sais pas si ma question concerne vraiment le graphisme. Si je ne post pas au bon endroit je m'excuse d'avance.
J'ai trouver un petit code sur internet que je comprend bien dans l'ensemble qui permet de limiter le nombre de caractère dans un JTextField, je l'ai modifier pour qu'en plus il interdisse de saisir autre chose qu'une lettre.
Ce qui donne ceci
Il fonctionne très bien, mais j'aimerais aussi que si j'entre un nouveau caractère, celui déjà entrer soit automatiquement remplacer par le nouveau pour ne pas avoir besoin d'effacer et retaper. Je sais que c'est la méthode insertUpdate qui permet de faire cela, mais je ne sais pas quoi entrer comme premier paramètre.Code:
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 import javax.swing.text.AttributeSet; import javax.swing.text.BadLocationException; import javax.swing.text.PlainDocument; import java.awt.event.*; public class JTextFieldLimit extends PlainDocument { private int limit; public JTextFieldLimit(int limit) { this.limit = limit; } public void insertString(int offset, String str, AttributeSet attr) throws BadLocationException { if (str == null) return; if ((getLength() + str.length()) <= limit && Character.isLetter(str.charAt(0))) { super.insertString(offset, str, attr); } } }
comment fonctionne cette méthode ?
Merci