Sei que existem outros tópicos sobre o assunto e inclusive já li vários, mas continuo na mesma. Será que não tem um jeito mais simples de fazer isso, tal como [color=red]jTextField.setMaxLength(100)[/color] por exepmplo, já que se pode setar tantas propriedades não dá pra setar essa também? Nem utilizando uma IDE como o Netbeans? Tem que ser por meio da interface Document ou através de um Key Listner? E com relação a um contador de caracteres, tem como implementá-lo tal como no javascript ou no php. Muitas vezes esse contador ajuda o usuário do sistema a se policiar para não ultrapassa o limite de caracteres permitidos para um campo. Valeu Galera
Pesquisando por aqui achei uma classe que faz isso:
importjavax.swing.JOptionPane;importjavax.swing.text.AttributeSet;importjavax.swing.text.BadLocationException;importjavax.swing.text.PlainDocument;publicclassFixedLengthDocumentextendsPlainDocument{privateintiMaxLength;publicFixedLengthDocument(intmaxlen){super();iMaxLength=maxlen;}@OverridepublicvoidinsertString(intoffset,Stringstr,AttributeSetattr)throwsBadLocationException{if(str==null){return;}if(iMaxLength<=0)// aceitara qualquer no. de caracteres{super.insertString(offset,str,attr);return;}intilen=(getLength()+str.length());if(ilen<=iMaxLength)// se o comprimento final for menor...{super.insertString(offset,str,attr);// ...aceita str}else{if(getLength()==iMaxLength){JOptionPane.showMessageDialog(null,"Limite de Caracteres atingido.");return;// nada a fazer}StringnewStr=str.substring(0,(iMaxLength-getLength()));super.insertString(offset,newStr,attr);}}}
Value Sandro, Vou Testar essa Implementação e ver no que dá. Mas e com relação ao Contador de Caracteres em Tempo Real, Alguém tem alguma idéia ou ja fez algo pareceido?
R
rolipam
E se eu quiser limitar a quantidade de caracteres por coluna e por linha, por exemplo: 51 colunas x 5 linhas = Total de 255 caracteres? Tem como fazer esse tipo de implementação?
R
rolipam
Fala aí Galera do GUJ,
Ninguem tem nehuma solução para as minhas últimas 2 perguntas? Existe alguma forma de contar os caracteres digitados a medida que o usurário vai digitando (Tipo JavaScript)? E com relação a quebra automática de linha dentro de um jTextArea, como implementar isso? Via Document? O que pretendo fazer é limitar o jTextArea a 255 Caracteres (51 caracterers por Linha x 5 Linhas) e quando atingir o limite da linha o cursor mudar de linha, ou quando atingir o limite de caracteres totais o cursor travar e mostrar a mensagem “Limite de Caracteres Atingido”, mas ainda permitindo a edição do jTextArea para reduzir o texto digitado. Mas também seria interessante bloquear a função colar dentro desse jTextArea ou ignorar os Caracteres excedentes qdo houver “cola” externa para dentro do jTextArea. Isso é Possível? Como Implementar isso? Mais uma vez Agradeço a essa Galera “Show de Bola” sempre disposta a compartilhar seus conhecimentos. Um Forte Abraço a Todos!