Tenho um jFormattedTextField que irá receber uma data ou um cpf, preciso saber como mudar o formato do mesmo.
Por ex:
No formulário o usuário escolhe numa combo se quer pesquisar por nome, data, codigo do cheque ou CPF.
Sempre que o usuário escolhe data ou CPF, não estou conseguindo alterar a máscara do campo. Assim, o formulário tem que ser fechado e aberto de novo para que o campo seja formatado com uma mascara diferente!
Tenho um jFormattedTextField que irá receber uma data ou um cpf, preciso saber como mudar o formato do mesmo.
Por ex:
No formulário o usuário escolhe numa combo se quer pesquisar por nome, data, codigo do cheque ou CPF.
Sempre que o usuário escolhe data ou CPF, não estou conseguindo alterar a máscara do campo. Assim, o formulário tem que ser fechado e aberto de novo para que o campo seja formatado com uma mascara diferente!
Alguém sabe como fazer isso? [/quote]
Como ele escolhe a data ou o cpf ?
Tem um JCombo ou um JRadioGroup ?
Depois da escolha que vc coloca a máscara ?
Sim, eu uso uma combo para escolher o tipo de dado…
Aí, na 1ª vez, ótimo, da tudo certo, ele instala a máscara e blz. Porém, quando escolho outro formato ele não substitui a máscara existente…
Já li vários tutoriais, JAVADOC, site da sun…e nada.
Vou por um trecho do código aqui…
//Este método está no action da jComboBox
private void formataChave(int op){
switch (op) {
case 1: edChave.setEditable(false);
break;
case 5: edChave.setEditable(true);
Utils.formataCampo(edChave, “########-##########-############”);
break;
case 6: edChave.setEditable(true);
edChave.removeAll();
edChave.setText(null);
Utils.formataData(edChave);
break;
default: edChave.setEditable(true);
edChave.removeAll();
break;
}
}
//Este método é utilizado acima
public static void formataCampo(javax.swing.JFormattedTextField campo, String formato){
MaskFormatter mskData;
try {
mskData = new MaskFormatter();
mskData.setMask(formato);
mskData.install(campo);
} catch (NullPointerException npe){
npe.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}