Tratamento de erro

4 respostas
lucaslzl

Bom dia,

eu preciso colocar tratamento de erro em alguns textfields (não deixar escrever números). Eu fiz dessa forma mas, não funciona. Alguém pode me dizer o que está errado, ou dizer outra forma de o fazer?

tfNome = new JTextField();
		tfNome.addKeyListener(new KeyAdapter() {
			@Override
			public void keyPressed(KeyEvent arg0) {
				if(Character.isDigit(arg0.getKeyChar())){  
                    arg0.consume();  
                }  
			}
		});

4 Respostas

ViniGodoy

Copie essas classes no seu projeto:
http://www.guj.com.br/java/107425-como-fazer-para-o-campo-textfield-receber-so-numeros#579803

Depois é só fazer:

Onde 5 é o número máximo de dígitos que o número pode ter.

Se quiser saber o que é esse Document e porque isso funciona, leia:
http://www.guj.com.br/articles/29

Esteja ciente que “KeyListener” dificilmente é usado em Java. Se quiser outras dicas de Swing, leia:
http://www.guj.com.br/java/104644-novo-em-swing#565211

ViniGodoy

Tópico movido para o fórum de interface gráfica.
Por favor, leia com atenção a lista de fóruns antes de postar.

lucaslzl

Me desculpe por ter postado no tópico errado.

Mas, tfNome serve para o usuário digitar o nome do paciente, portanto não pode ter um limite de dígitos, e nesse caso ele só deve receber letras.

Obrigado.

ViniGodoy

Então entenda as classes e as adapte.

Mas um limite sempre existirá, nem que seja a largura da coluna no seu banco. É difícil um nome ultrapassar 150 caracteres.

Criado 15 de julho de 2012
Ultima resposta 16 de jul. de 2012
Respostas 4
Participantes 2