Validar uma data quando o jtextField perde o focu

8 respostas
Naruto

bom dia pessoal.. eu to fazendo isso para validar uma data quando ela perde o focu so que ele so valida c o campo estiver vazio ou c a data estiver sem os / mais c ela estiver assim ela passa normal 35/13/2008 ele passa o.O e tipo quando sai do focue a ata é invalida ele esta mandando a mensagem trez vezes o.O

segue o codigo
private JTextField getEdtdatacad() {
		if (edtdatacad == null) {
			edtdatacad = new JTextField();
			edtdatacad.setBounds(new Rectangle(107, 43, 99, 20));
			edtdatacad.addFocusListener(new java.awt.event.FocusAdapter() {
				public void focusLost(java.awt.event.FocusEvent e) {
					try{
					SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");					
					Date datacad;				
					datacad = format.parse(edtdatacad.getText());  
					   }catch (Exception exception){
						   System.out.println(exception.getMessage());
							exception.printStackTrace();   
							JOptionPane.showMessageDialog(null,
									"Data Invalida ", "Aviso",
									JOptionPane.INFORMATION_MESSAGE);
							        edtdatacad.requestFocus();
							        
					   }
				}
			});
		}
		return edtdatacad;
	}

alguem tem uma outra ideia?? vlww

8 Respostas

ViniGodoy

Não use o focuslost para validar campos de texto.

No lugar, use um InputVerifier.

saninaimayer

ViniGodoy, qual o por que de se usar InputVerifier no lugar de focuslost?

t+

Naruto

so que ainda ela não valida…
so c estiver sem nada digitado

ViniGodoy

Dois motivos:

  1. Ele funciona direito. Não tem esses problemas do evento ocorrer várias vezes ou em situações inusitadas;
  2. Ele foi feito para isso.
ViniGodoy

Naruto:
so que ainda ela não valida…
so c estiver sem nada digitado

Já pensou em baixar o JCalendar?

Naruto

inton amigo não sabia que tinha é um plugin??? vou pesquisar no google
vlwww

Naruto

da para utilizar ele com o eclipse??? tpw instalar ele como um plugin?
vlw

ViniGodoy

Sim, dá para usar com o Eclipse.

Não, não é um plugin. Você só adiciona o .jar na sua aplicação e sai usando.

Criado 5 de agosto de 2008
Ultima resposta 5 de ago. de 2008
Respostas 8
Participantes 3