Laomor
Outubro 13, 2009, 2:46pm
#1
Amigos preciso colocar duas mascaras no mesmo Campo,
queria usar a opçao do radio com cpf e cnpj e ele mudar a mascara na opcao que eu escolher, estou colocando a minha instrucao do MaskFormattedTextFiel no pre create da propriedade do campo no netbeans.
Nao sei como fazer isso.
Grato
Você está usando JFormattedTextField? Nesse caso, creio que basta incluir o código a seguir no evento ItemStateChanged de cada JRadioButton:
formattedTextField.setFormatterFactory(new DefaultFormatterFactory(new MaskFormatter(mascara)));
Onde é a máscara adequada ("###.###.###- ##" para CPF, “##.###.###/####- ##” para CNPJ).
blst
Outubro 14, 2009, 3:17pm
#3
Boa Tarde.
Esses tempos para tras fiz um programa utlizando um mesmo campo para CPF/CNPJ e com dois radiobutton (Cpf / CNPJ).
No evento MouseCliked do radioButton do CNPJ eu inseri o seguinte código
MaskFormatter formaCNPJ;
try {
formaCNPJ = new MaskFormatter("##.###.###/####-##");
formaCNPJ.setValueContainsLiteralCharacters(false);
formaCNPJ.setPlaceholderCharacter('_');
DefaultFormatterFactory formacnpj = new DefaultFormatterFactory(formaCNPJ);
seuJTextField.setFormatterFactory(formacnpj);
seuJTextField.setValue("");
} catch (ParseException ex) {
ex.printStackTrace();
}
No mesmo evento porém no radiobutto do CPF foi inserido o seguinte código
MaskFormatter formaCPF;
try {
formaCPF = new MaskFormatter("###.###.###-##");
formaCPF.setValueContainsLiteralCharacters(false);
formaCPF.setPlaceholderCharacter('_');
DefaultFormatterFactory formacpf = new DefaultFormatterFactory(formaCPF);
seuJTextField.setFormatterFactory(formacpf);
seuJTextField.setValue("");
} catch (ParseException ex) {
ex.printStackTrace();
}