Utilizando Mascaras Dinamicas

1 resposta
T

Bom dia caros amigos do PJ,

Estou com um probleminha aqui em um projeto e já que tenho onde perguntar…

Estou tentando criar uma caixa de formatacao de CPF e CGC porem ela mostra valores vindos de um Campo do banco de dados, porem esse campo tanto armazena CPF como CGC (o nome do campo eh CIC) daí,
já consegui fazer a máscara funcionar porem eu não consigo alterá-la a medida que os campos são diferentes, ou seja, quando for CPF deve usar o formato : “###.###.###-##” e quando for CGC : “##.###.###/####-##” agora me parece que depois de instalada uma das máscaras, não é possível modifica-la.
Ai vai meu código:

MaskFormatter formatdate = null;
        try {
            if (eCNPJ==false) {
                formatdate = new MaskFormatter("###.###.###-##");
                formatdate=formatdate;
            } else {
                formatdate = new MaskFormatter("##.###.###/####-##");
                formatdate=formatdate;
            }
        }
        catch (java.text.ParseException e) {
            e.printStackTrace();
        }
        formatdate.install(this);

Grato pela atenção, Thiago.

1 Resposta

F

Seja bem vindo ao PJ Thiago.

Pelo que vejo, seu processo está correto, mais talvez a adição da nova mask instanciada ao campo texto, deva ser o que esteja faltando. Dessa forma você recria o objeto sobre o novo padrão criado.

MaskFormatter formatdate = null; try { if (eCNPJ==false) { formatdate = new MaskFormatter("###.###.###-##"); txtformatCIC = new JFormattedTextField( formatdate ); } else { formatdate = new MaskFormatter("##.###.###/####-##"); txtformatCIC = new JFormattedTextField( formatdate ); } } catch (java.text.ParseException e) { e.printStackTrace(); } formatdate.install(this);

Testa ai, e veja se isso funciona, ok? :grin:

Abraço,
Fábio Heleno.

Criado 10 de novembro de 2004
Ultima resposta 10 de nov. de 2004
Respostas 1
Participantes 2