Como eu faço para pegar valores númericos dígitados no JTextField…??
Como que eu faço para validar o que o usuário digitou em um JTextField…?
por exemplo se o usuário dígitar uma string no campo do JTextField aparece uma messagem para ele a qual ele so podera dígitar número tem alguma exceção para isso…?
JTextField
E
3 Respostas
C
Para pegar valores numéricos do JtextField é necessário vc converter para int…
Exemplo:
private JTextField txt;
...
int id = Integer.parseInt(txt.getText());
Digitar apenas números:
public boolean validaCampo(String caract){
boolean aux = true;
String regex = "[+-?][0-9]*[.,]?[0-9]*";
if(!Pattern.matches(regex, caract)){
aux = false;
}
return aux;
ahh ía me esquecendo do import
import java.util.regex.*;
Para fazer a validação use esse método e caso volte false é porque
tem letras e mande uma mensagem
B
Ola,
Para pegar o que o usuário digitou no JTextField vc pode usar o metodo "getText()" que te retorna uma String do que foi digidado.
Para validar o que o usuário pode digitar vc pode usar o Document do JTextField, assim vc nem deixa que ele digite coisas que não pode, um exemplo:JTextField myText = ...
myText.setDocument(new PlainDocument(){
public void insertString(int offs, String str, AttributeSet a)
throws BadLocationException {
if (str == null || !Character.isDigit(str.toCharArray()[0]) { // verifica se a string que se quer incluir não está nula e se ela é um digito.
return;
}
if(str.getLength() > 1){ //verifica se o metodo para insirir foi o setText
super.insertString(offs, str, a);
}
super.insertString(offs, str, a);
}
}
Neste exemplo o TextField só aceitará entrada de numeros...
E
muito obrigado…!
Criado 5 de outubro de 2006
Ultima resposta 5 de out. de 2006
Respostas 3
Participantes 3
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo