getText() de um textfield e tratmento de eventos com KeyListener [RESOLVIDO]

5 respostas
W

Boa noite galera,

To com um problema aqui. Adicionei um KeyListener em um textfield para que quando o usuário digite qualquer caracter, gere um evento e eu capture os caracteres do textfield. O B.O. é que, quando o usuário digita o caracter, o disparo do evento ocorre antes da letra ser adicionada no textfield e quando chega no getText() ele pega “” (vazio). Se eu digitar ‘abc’ ele vai pegar só ‘ab’.

Alguém pode me ajudar a arrumar isso?!

Att,

5 Respostas

romarcio

Use o método caretUpdate() do evento javax.swing.event.CaretEvent
Acho que vai fazer o que você quer.

W

romarcio:
Use o método caretUpdate() do evento javax.swing.event.CaretEvent
Acho que vai fazer o que você quer.

Olá mano, obrigado mas tem como ser um pouquinho mais específico?!

romarcio

Ao invés de usar o KeyListener, use o CaretListener.

Faz esse teste para ver

textField1.addCaretListener(new CaretListener() {
            public void caretUpdate(CaretEvent e) {
                System.out.println(textField1.getText());
            }
        });
W

romarcio:
Ao invés de usar o KeyListener, use o CaretListener.

Faz esse teste para ver

textField1.addCaretListener(new CaretListener() { public void caretUpdate(CaretEvent e) { System.out.println(textField1.getText()); } });

Obrigado, deu certo!

romarcio

:thumbup:
Legal que funcionou, T+

Criado 28 de fevereiro de 2012
Ultima resposta 29 de fev. de 2012
Respostas 5
Participantes 2