bonjour,
j'ai lu plusieurs documentations à ce sujet la et j'ai trouvé un exemple qui permettait de se restreinde a la saisie de nombre.

je l'ai modifié afin de limiter le nombre à saisir par sa taille ce qui marche ainsi que l'émission d'un bip de signalement et la j'essais actuellement de rajouter un 2eme prarametre afin de fixer une valeur maximale

j'arrive à recuperer la taille du champ saisie dans le jtextfiled mais pas son contenure pour faire la comparaison

voici mon code:
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
 
import java.awt.Toolkit;
 
 
/****
 * Classe DDocumentNumber : permet de personnaliser la gestion du "model" des composants Texte
 *        proposee dans l'api de swing 
 *
 ****/
 
 
import javax.swing.text.*;
import javax.swing.text.DefaultEditorKit.BeepAction;
import javax.swing.*;
import java.awt.BorderLayout;
 
public class Filtre extends PlainDocument
{
	private int longeur;
	private String nombre;
	private int valeur;
             private int max; 
	public Filtre(int taille,int max)
	{
	   super ();
	   this.longeur = taille;
                this.max = max;
	}
 
	/**
         * Redefini la methode de la classe PlainDocument permettant ainsi d'autoriser 
         * uniquement les caracteres desires
         */
	public void insertString (int offs, String str, AttributeSet a) throws BadLocationException
	{
		StringBuffer sb = new StringBuffer ();
		char car;
		nombre="";
		if(offs<longeur)
		{
 
			for (int i=0; i<str.length(); i++)
			{	
				car = str.charAt(i);
 
				if (Character.isDigit (car))
				{	
					sb.append(car);	
					System.out.println("str : "+str);
				}
				else
				{
					Toolkit.getDefaultToolkit().beep();
					System.out.println("la caractere saisie n'est pas un chiffre");
				}
			}
			super.insertString(offs, sb.toString(), a);
			System.out.println("sb : "+ sb);
			System.out.println("this.getLength() : "+ this.getLength());
 
 
		}
		else
			Toolkit.getDefaultToolkit().beep();
	}
 
}