Máscara com um caractere opcional

5 respostas
ElesisLink

Gente, to com 2 dúvidas na hora sobre máscaras em java:

1º Quando eu digito algo q a mascara não permite, ele retorna para o último estado válido, tipo,

se eu digitar em uma mascara de cpf, o valor [CPF removido] e depois digitar so 111.111.111-1, ele retotna para o valor [CPF removido]…

Como eu faço para quando ele digitar uma mascara errada ou nula, ele limpar todo o JFormatterTextField ?

2º Tem como eu colocar um caractere não obrigatório em uma mascara? Tipo, quero que seja possivel escolher se quer adicionar um número a mais ou

n, de acordo com o usuario… Tem como ?

Desde já, sou grato a quem puder me ajudar…

5 Respostas

mcirqueira

1º R= Se for o que to pensando, bota um jFTTseiláoque.setText("").

2º R= Acho que não, acho melhor verificar se os caracteres obrigatorios estão digitados, senão não completa a operação.

ElesisLink

Eu não entendi como fazer a primeira, como eu sei que o que ele digitou é inválido e, por isso, ele setou o valor válido anterior ?

Quanto a segunda, eu queria fazer uma mascara para celulares, ja que aqui em São Paulo foi acrescentado o 9. Mas, penso eu que

se ja adicionaram o 9, se eu fizer o sistema sem essa mascara e adicionarem mais um numero, por exemplo o 8, eu terei que reestruturar

todo o sistema para as novas mudanças.

O que me sugerem ?

E

ElesisLink:
Eu não entendi como fazer a primeira, como eu sei que o que ele digitou é inválido e, por isso, ele setou o valor válido anterior ?

Quanto a segunda, eu queria fazer uma mascara para celulares, ja que aqui em São Paulo foi acrescentado o 9. Mas, penso eu que

se ja adicionaram o 9, se eu fizer o sistema sem essa mascara e adicionarem mais um numero, por exemplo o 8, eu terei que reestruturar

todo o sistema para as novas mudanças.

O que me sugerem ?

Atenção, em São Paulo nem todos os celulares receberam o número 9. Os Nextel não receberam esse algarismo a mais, e pela minha definição eles também são celulares. Portanto, você deve aceitar números de 9 e de 8 dígitos, e não fique se matando para ficar validando isso com máscara (e sim com alguma lógica, se alguém reclamar que números de 9 dígitos têm de começar agora por 9. )

ElesisLink

Entendi, no caso, no campo de celular, seria melhor impedir o usuário de digitar letras e deixar o campo com

um limite de caracteres, não e ? Faz sentido, eu acho q pode ser a melhor forma de fazer isso, obrigado.

Mas não existe mesmo uma forma de fazer um caractere opcional em uma Máscara ?

ElesisLink

Gente desculpa o double post, mas eu queria saber como eu posso saber se o valor que o usuário digitou no JFormattedTextField é válido,

tipo: ele tinha setado um valor válido. Em seguida, ele sobreescreveu com uma valor incorreto. Quando ele sai do JFormattedTextField,

ele retorna o valor que era válido. Como eu posso mudar isso ?

Criado 23 de julho de 2012
Ultima resposta 13 de set. de 2012
Respostas 5
Participantes 3