Pessoal me deem uma força
Como eu faço pra entrar apenas com numero, e quando entrar com letras me retorno uma mensagem
Ex:
tenho que entrar com endereço e numero, e no campo numero não aceita letras
Iae lucasportela blz,
Da uma olhada na classe: MaskFormatter
abc
Dei uma olhada de 5 minutos, mas com os métodos de lá não achei uma lógica eficiente de validação… manda um exemplo de uso pra eu entender melhor o funcionamento
Olá amigo!
Eu uso assim
tem que ser utilizado na criação do objeto
no netbeans clique com o botão direito o jformattedField e vá em personalizar código
jftTxFinanceira = new javax.swing.JFormattedTextField(setMascara("************","0123456789."));
Um grande abraço
Sua aplicação é Swing? Se for, use um MaskFormatter ou um IntegerDocument:
Se quiser validar o campo assim que o usuário sai do campo, use um InputVerifier:
http://download.oracle.com/javase/7/docs/api/javax/swing/InputVerifier.html
Se não for Swing, aí você pode usar JavaScript para validar o campo.
Agora, essa dúvida não existiria se vc tivesse aberto seu tópico no fórum certo (Interface Gráfica para Swing, Desenvolvimento Web para web).
Da uma olhada em como se usa o “MaskFormatter”
faicoxim ,
Se for uma aplicação swing , no caso do JTextField use um modelo de documento , segue abaixo:
import javax.swing.text.PlainDocument;
import javax.swing.text.BadLocationException;
import javax.swing.text.AttributeSet;
public class ModeloDocumento extends PlainDocument {
int limitestr;
public ModeloDocumento(int maxlen) {
super();
limitestr = maxlen-1;
// TODO Auto-generated constructor stub
}
public void insertString(int offs, String str, AttributeSet a) throws BadLocationException {
Character ch = new Character('a');
for(int i = 0;i < str.length();i++) {
if( ! ch.isDigit( str.charAt(i) ) ) { // Aqui verifica , se for diferente de numero não insira o caractere no jtextfield
return;
}
// if( ch.getType( str.charAt(i) ) == Character.OTHER_NUMBER ) {
// return;
// }
}
if( offs > limitestr ) {
return;
}else {
super.insertString(offs, str, a);
}
}
}
Na hora de instanciar seu JTextField use:
JTextField seuCampo = new JTextField(new ModeloDocumento(6),"",6); // onde 6 é o numero de caracteres numéricos que serão aceitos.
Veja esse artigo do GUJ espero que te ajude: http://www.guj.com.br/articles/29
Qualquer duvida posta ai.
:thumbup:
[quote=faicoxim]Pessoal me deem uma força
Como eu faço pra entrar apenas com numero, e quando entrar com letras me retorno uma mensagem
Ex:
tenho que entrar com endereço e numero, e no campo numero não aceita letras[/quote]
Só por dúvida. Existem raras situações onde número pode ser letra (como é comum ver, s/n para sem numeração). Essas situações não seriam contempladas?
De qq forma, creio que os posts do ViniGodoy devem ajudá-lo.
PS: Não use o InputVerifier para impedir que o campo perca o foco enquanto o mesmo não for válido. No teclado funciona blz. Mas não posso dizer o mesmo usando o mouse…