Olá,
Preciso utilizar 1 campo de texto para CPF e CNPJ mas gostaria de utilizar uma máscara, que … quando os números forem menores que 11, a mascara seja de CPF, mas quando for maior, a mascara seja de CNPJ.
Segue em anexo o print do formulário.
[RESOLVIDO] JTextField + Mascara
B
4 Respostas
R
1 like
Costumo usar isso no evento de FocusLost
String campo = jTextField1.getText();
if (campo.length() == 11) {//CPF
String cpf;
cpf = String.valueOf("" + campo.charAt(0) + campo.charAt(1) + campo.charAt(2) + "." + campo.charAt(3) + campo.charAt(4) + campo.charAt(5) + "." + campo.charAt(6) + campo.charAt(7) + campo.charAt(8) + "-" + campo.charAt(9) + campo.charAt(10));
jTextField1.setText(cpf);
} else if (campo.length() == 14) {//CNPJ
String cnpj;
cnpj = String.valueOf("" + campo.charAt(0) + campo.charAt(1) + "." + campo.charAt(2) + campo.charAt(3) + campo.charAt(4) + "." + campo.charAt(5) + campo.charAt(6) + campo.charAt(7) + "/" + campo.charAt(8) + campo.charAt(9) + campo.charAt(10) + campo.charAt(11) + "-" + campo.charAt(12) + campo.charAt(13));
jTextField1.setText(cnpj);
}
EDIT
Número menor que 11 não pode ser CPF, pq resultaria em CPF inválido, mesma coisa com o CNPJ
B
Ótima solução!!! Obrigado
B
1 like
Dei uma melhorada no código…
public void jtfMascara(int jtfLength) { //Função que recebe o tamanho do campo de texto. String cpf = jtf_CPF.getText() + “”; //Pega o texto do TextField. if (jtfLength == 11) {//CPF jtf_CPF.setText(cpf.substring(0, 3) + “.” + cpf.substring(3, 6) + “.” + cpf.substring(6, 9) + “-” + cpf.substring(9, 11)); //Mascara CPF. } else if (jtfLength == 14) {//CNPJ jtf_CPF.setText(cpf.substring(0, 2) + “.” + cpf.substring(2, 5) + “.” + cpf.substring(5, 8) + “/” + cpf.substring(8, 12) + “-”);//Mascara CNPJ. } }
R
Boa mano!!!
Criado 5 de setembro de 2018
Ultima resposta 7 de set. de 2018
Respostas 4
Participantes 2
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Back-end Java: Microsservicos, Spring Boot e Kubernetes Por Eduardo Felipe Zambom Santana — Casa do Codigo
