Tenho um probleminha que eu sei que é simples para vcs…
eu gostaria de saber se tem algum metodo, mascara para digitar apenas letras maiusculas bloqueando a entrada de outros caracteres no JTextField…como *&%$#…
eu consegui aqui bloquear apenas numeros, e ja fiz muitas comparações inadequadas…
textoNome = new JFormattedTextField();
formatonome = new MaskFormatter("**************************");
formatonome.setValidCharacters("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
formatonome.install(textoNome);
T
thiagopassosp
Obrigado Cassio e aangreen
era isso mesmo que eu precisava.
abraços
T
thiagopassosp
amigo eu analisei o codigo e pensei que ia compilar.
quando apliquei no projeto não rolou acho que eu esqueci de alguma coisa ai , alguem pode me ajudar
[quote]
Dicas: # => Usa número válido, usa Character.isDigit ’ => Caractere de escape, usado para escape de qualquer caractere de formato especial U =>Qualquer caractere(Character.isLetter). Todas as letras minúsculas são transformadas em maiúsculas. L => Qualquer caractere(Character.isLetter). Todas as letras maiúsculas são transformadas em minúsculas. A => Qualquer caractere ou digito (Character.isLetter ou Character.isDigit) ? => Qualquer caractere * => Qualquer coisa H => Qualquer caractere hexadecima(0-9, a-f ou A-F)
_
_fs
Isso limita a quantidade de caracteres, não?
Um outro jeito:
JTextFieldfield=newJTextField();field.setDocument(newPlainDocument(){@OverridepublicvoidinsertString(intoffs,Stringstr,AttributeSeta)throwsBadLocationException{//normalmente apenas uma letra é inserida por vez,//mas fazendo assim também previne caaso o usuário//cole algum textofor(inti=0;i<str.length();i++)if(Character.isLetter(str.charAt(i))==false)return;super.insertString(offs,str,a);}});
S
silva.fernandes
Aquele método que passei, também limita a quantidade de caractere no JFormatterTextField.
Caro você queira somente uma 5 letras e a primeira vc queira que em maiusculo.
Pronto … ele ficou condicionado a receber apenas 5 caracteres e com a primeira em maiuscula.
Certo !!!
T
thiagopassosp
valew pela ajuda ai…
mas agora tem o seguinte problema como que eu faço para dar espaço ao digitar um nome por exemplo (" Thiago Passos")
só fica assim ThiagoPassos, alguem pode me ajudar aiii??
segue o meu codigo.
Bem para escrever espaços é so habilitar o espaço como caracter que também possa ser escrito!
Eu tenho outro problema, formatei uma JFormattedTextField para receber apenas 9 digitos, com o seguinte codigo:
text=newJFormattedTextField();text.setBounds(newRectangle(21,60,182,21));MaskFormatterformatonome;try{formatonome=newMaskFormatter("#########");formatonome.setValidCharacters("[telefone removido]");formatonome.install(text);}catch(ParseExceptione){// TODO Auto-generated catch blocke.printStackTrace();}
Mas quando vou escrever na na caixinha está cheia de espaços. não há forma te tirar todos esses espaços?
Já tentei o text.setValue(""), mas depois perde toda a configuração de feita pelo MASKFORMATTER. :?
Têm alguma sugestão de como resolver este problema?
R
rafaelaalves
o que seria essa formato nome ?
T
tmagostinho
A variavél formatonome é uma variavél do tipo MaskFormatter, que esta declarada no inicio da class!