getText().length() em JFormattedTextField

2 respostas
W

Bom dia,

Tenho uma máscara (##) ####-#### e trato eventos com CaretListener. O problema é que, quando faço getText().length() neste field e o campo está ‘vazio’, ele me retorna 1 e não 14 como eu espero! (Ele está considerando apenas o “(” como caracter no campo e preciso que ele considere "( ) - ").

Alguém pode me ajudar, p favor!

Att,

Wellington

2 Respostas

marciosouzajunior

Pra saber se o campo está vazio use:

if (campo.getValue() == null) {
   // códigos
}
fernandopaiva

wellingtonfoz:
Bom dia,

Tenho uma máscara (##) ####-#### e trato eventos com CaretListener. O problema é que, quando faço getText().length() neste field e o campo está ‘vazio’, ele me retorna 1 e não 14 como eu espero! (Ele está considerando apenas o “(” como caracter no campo e preciso que ele considere "( ) - ").

Alguém pode me ajudar, p favor!

Att,

Wellington

Mas é a função dele considerar toda a máscara como caracter, o q vc precisa fazer é filtrar isso retirando a máscara toda.

Veja

if(campoMascara.getText().replaceAll("\\(", "").replaceAll("\\)","").replace("-","").trim().isEmpty()){
     System.out.println(campoMascara.getText());
     System.out.println(campoMascara.length());
}

Vc precisa fazer isso para todos os tipos de mascaras, desde datas até cpf/cnpj

t+ e boa sorte.

Criado 14 de março de 2012
Ultima resposta 14 de mar. de 2012
Respostas 2
Participantes 3