Olá pessoal;
Alguém conhece algum método de validação de TextField que permita ao usuário digitar no campo apenas numeros?
Agradeço a ajuda.
Valeu.
Olá pessoal;
Alguém conhece algum método de validação de TextField que permita ao usuário digitar no campo apenas numeros?
Agradeço a ajuda.
Valeu.
Dá uma pesquisada na classe:
javax.swing.JFormattedTextField
… disponível no Java SE desde a versão 1.4, e que permite a definição e máscaras de entrada de dados.
Tem uma lista de exemplos aqui:
http://www.java2s.com/Code/Java/Swing-JFC/AquickdemonstrationofJFormattedTextField.htm
Se quiser utilizar um JTextField faça:
class acceptNumbers extends PlainDocument {
private static final long serialVersionUID = 1L;
public void insertString(int offs, String str, AttributeSet a) throws BadLocationException {
if (str == null)
return;
try {
Integer.parseInt(str);
super.insertString(offs, str, a);
}
catch (NumberFormatException e) {
// e.printStackTrace(); Caso queira mostrar algo se não for numero
}
}
}
Exemplo de uso:
JTextField tf = new JTextField(10);
tf.setDocument(new acceptNumbers());
procura pelo método setValidCharacters, do MaskFormatter.
Valeu gente. Deu certo.