JTextField un nombre [Résolu]

Messages postés
85
Date d'inscription
lundi 26 janvier 2004
Dernière intervention
25 octobre 2007
- - Dernière réponse : Twinuts
Messages postés
5316
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
18 janvier 2019
- 2 déc. 2005 à 14:29
Bonjour,
je suit débutante en java
et
je voudrais savoir comment on vérifie si un JTextField est un nombre
merci d'avance
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
344
Date d'inscription
mardi 18 mai 2004
Dernière intervention
23 juin 2006
4
3
Merci
Si tu veux uniquement saisir un nombre, tu peux choisir d'utiliser un JSpinner ou un JFormattedTextField (JFormattedTextField tft1 = new JFormattedTextField(NumberFormat.getIntegerInstance());)

Sinon, tu peux vérifier le contenu de ton JTextField:
String tmp = jtf.getText();
try{
Integer.parseInt(tmp);
}catch(NumberFormatException nfe){
System.out.println("Ce n'est pas un nombre");
jtf.setText("");
}

"A game is a series of interesting choices." Sid Meier

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 88 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_ducheseb
Messages postés
85
Date d'inscription
lundi 26 janvier 2004
Dernière intervention
25 octobre 2007
0
Merci
Merci beaucoup,
avec la solution du try ca marche trés trés bien
merci encore
Commenter la réponse de calla25
Messages postés
5316
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
18 janvier 2019
99
0
Merci
Salut,



sinon tu peux toujours créer un modèle générique pour les JTextField et
la l'utilisateur ne pourra pas saisir autre chose qu'un nombre exemple :





JTextField txt = new JTextField();

DigitModel model = new DigitModel();

..........



txt.setModel(model);



..........







public class DigitModel extends PlainDocument {



public DigitCaseDocument(){

super();

}



public void insertString(int offs, String str, AttributeSet a)

throws BadLocationException {



if (str == null) return;

String digit = "";

for (char c : str.toCharArray())

if (Character.isDigit(c)) digit += c;

else {



Toolkit.getDefaultToolkit().beep();

break;

}

super.insertString(offs, digit, a);

}

}


WORA
Commenter la réponse de Twinuts

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.