Olá, pessoal.
Estou iniciando em Java e preciso fazer um programa que contenha um campo para cadastro tanto de CPF quanto de CNPJ. Preciso colocar uma máscara de acordo com a opção selecionada num jRadioButton (se estiver selecionado “pessoa física”, o FormattedText terá uma máscara para CPF, se for “pessoa jurídica” que está selecionado, a máscara mudará para uma de CNPJ).
O meu código está assim:
[code] private void jRdbJuridicaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
jFormattedTextField1.setText("");
try {
jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##.###.###/####-##")));
} catch (java.text.ParseException ex) {
ex.printStackTrace();
}
}
private void jRdbFisicaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
jFormattedTextField1.setText("");
try {
jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("###.###.###-##")));
} catch (java.text.ParseException ex) {
ex.printStackTrace();
}
}[/code]
A máscara funciona quando eu seleciono os valores do RadioButton, porém, se eu preencher o campo de texto e depois resolver alterar a seleção do RadioButton, não consigo mais alterar o FormattedTextField. Por exemplo, eu seleciono “Pessoa física” e preencho o CPF normalmente, se eu mudar para “pessoa jurídica”, não consigo digitar mais nada no FormattedTextField, ele fica como se estivesse bloqueado.
Desde já, obrigado.