Vou enviar um exemplo completo pra ver se te ajuda. É um método que retorna um JFormattedTextField já acertado pra trabalhar com validação de CPF.
public static JFormattedTextField getCPFField()
{
MaskFormatter mask = getMaskFormatter("###.###.###-##");
mask.setValueContainsLiteralCharacters(false);
mask.setPlaceholderCharacter('_');
JFormattedTextField field = new JFormattedTextField(mask);
field.setInputVerifier(verifier);
return field;
}
A função getMaskFormatter é mostrada abaixo:
public static MaskFormatter getMaskFormatter(String mask)
{
try
{
return (mask != null) ? new MaskFormatter(mask) : new MaskFormatter();
}
catch (ParseException e)
{
return null;
}
}
Para efeito de espaço, não incluí o código para validação do conteúdo, apenas o código para a máscara.
[quote=Rodrigo Manhães]Vou enviar um exemplo completo pra ver se te ajuda. É um método que retorna um JFormattedTextField já acertado pra trabalhar com validação de CPF.
public static JFormattedTextField getCPFField()
{
MaskFormatter mask = getMaskFormatter("###.###.###-##");
mask.setValueContainsLiteralCharacters(false);
mask.setPlaceholderCharacter('_');
JFormattedTextField field = new JFormattedTextField(mask);
return field;
}
A função getMaskFormatter é mostrada abaixo:
public static MaskFormatter getMaskFormatter(String mask)
{
try
{
return (mask != null) ? new MaskFormatter(mask) : new MaskFormatter();
}
catch (ParseException e)
{
return null;
}
}
Para efeito de espaço, não incluí o código para validação do conteúdo, apenas o código para a máscara.[/quote]
Valeu Rodrigo, só mais uma coisa para fechar este assunto. Este método getCPFField() é um método que verifica o cpf certo? Então, onde eu tenho que chama-lo?
Este método simplesmente retorna um JFormattedTextField com a máscara para o CPF, mas não verifica se é um CPF válido. O que ele faz é certificar que você digitará somente números e forçar a digitação dentro da máscara. Para a validação você pode usar um InputVerifier.
Ah legal… Agora eu saquei… HEheheh
Acho que vc deve estar achando que eu estou de sacanagem, mas o código que você me passou não funciona. O erro ocorre na primeira linha