Caros colegas,


    Estou implementando uma variação de JTextFields que aceitam no
máximo n caracteres digitados. Contudo, estou tendo problemas
com relação à utilização do método consume()  no método keyPressed (a
classe que estou escrevendo estende JTextField e implementa
a interface KeyListener). O fato é que os caracteres que excedem o
limite continuam a aparecer (o mesmo não acontece quando utilizo
TextField
em vez de JTextField). O trecho do código a que me refiro é o seguinte:

    if ((key == KeyEvent.VK_TAB) || (key == KeyEvent.VK_ENTER)) {
         ((Component) (e.getSource())).transferFocus();
     }
     else if ((key != KeyEvent.VK_LEFT) && (key !=
KeyEvent.VK_BACK_SPACE) && (super.getText().length() > maxLength)) {
         e.consume();  // Não está tendo o comportamento desejado!!!!
        .
        .
        .
     }

    Alguém tem uma sugestão para a solução desse problema?

    Obrigado desde já,

                Carlos Daniel

    --------------------------- LISTA SOUJAVA ---------------------------
    http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    ---------------------------------------------------------------------

Reply via email to