Validar entrada do teclado

1 resposta
U

Bom dia

Estou com dúvidas para validar valores digitados por um usuário em um jTextField. Com relação a máscara, caso eu coloque “XXX” o usuário é obrigado a informar 3 números, mas tenho que permitir que ele informe valores tipo 1 ou 20 também. Logo gostaria de uma ajuda de como posso, antes que o valor digitado seja visualizado no campo, capturar o valor digitado, valida-lo e inserir no campo.

Obrigado

1 Resposta

U

Já que ninguem retornou, acabei de encontrar este código que vou testar:

// classe implementa interface KeyListener
// através de sua classe adaptadora
class OnTheFlyValidator extends KeyAdapter {
  // monitoração do acionamento de teclas
  public void keyPressed(KeyEvent e) {
    TextField tf = (TextField)e.getSource();
    try {
      // se tecla diferente de algumas permitidas
      if (e.getKeyChar()!=KeyEvent.VK_TAB &&
          e.getKeyChar()!=KeyEvent.VK_ENTER &&
          e.getKeyChar()!=KeyEvent.VK_BACK_SPACE &&
          e.getKeyChar()!=KeyEvent.VK_DELETE &&
          e.getKeyChar()!=KeyEvent.VK_LEFT &&
          e.getKeyChar()!=KeyEvent.VK_RIGHT)
        // procura efetuar conversão
        Integer.parseInt(tf.getText()+e.getKeyChar());
    } catch (NumberFormatException exc) {
      // em caso de erro consome evento (tecla)
      // e sinaliza ocorrência
      e.consume();
      Toolkit.getDefaultToolkit().beep();
    }
  }
}
Criado 17 de janeiro de 2008
Ultima resposta 17 de jan. de 2008
Respostas 1
Participantes 1