Nombre de caractères JTextArea

lordobiki Messages postés 1 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 26 juillet 2004 - 26 juil. 2004 à 15:01
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011 - 16 août 2007 à 16:13
Je voudrais pouvoir limiter le nombre de caractères que l'utilisateur peut rentrer dans mon JTextArea "champComFR".Pour l'instant je met un listener qui dès que le nb de caractères est > 80 met le focus dans le champ suivant mais on peut rajouter des caractères un à un en revenant dans le JTextArea, d'où le problème.Y'a t'il un moyen de limiter plus facilement le nombre de caractères et de manière plus efficace ?? (sachant que je ne peut pas mettre dans le listener "champComFR.setEditable(false);" car l'user doit pouvoir revenir dans le champ et modifier ce qu'il a mit).
Merci de me sauver si quelqu'un sait!!!

Voici le code :

champComFR = new JTextArea(1,1);
JScrollPane gt = new JScrollPane(champComFR);
gt.setPreferredSize(new Dimension(40,40));
gt.setMaximumSize(new Dimension(40,40));
champComFR.setLineWrap(true);
champComFR.setWrapStyleWord(true);
champComFR.addKeyListener(new KeyListener() {
public void keyPressed(KeyEvent e) {
if (champComFR.getText().length()>=80){

champComFR.transferFocus();}
}
public void keyReleased(KeyEvent e){}
public void keyTyped(KeyEvent e){}
});

3 réponses

wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
26 juil. 2004 à 15:13
si il met 80 char tu fait un getText, tu prend les 80 premier et tu setText le resultat....
0
cs_Zart Messages postés 285 Date d'inscription jeudi 29 juillet 2004 Statut Membre Dernière intervention 27 juin 2006 1
30 juil. 2004 à 13:48
Comme dit

champComFR = new JTextArea(1,1);
JScrollPane gt = new JScrollPane(champComFR);
gt.setPreferredSize(new Dimension(40,40));
gt.setMaximumSize(new Dimension(40,40));
champComFR.setLineWrap(true);
champComFR.setWrapStyleWord(true);
champComFR.addKeyListener(new KeyListener() {
public void keyPressed(KeyEvent e) {
if (champComFR.getText().length()>=80){
champComFR.setText(champComFR.getText().substring(0,79))
;
champComFR.transferFocus();}
}
public void keyReleased(KeyEvent e){}
public void keyTyped(KeyEvent e){}
});
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
16 août 2007 à 16:13
salut !!! mais a quoi sert ce constructeur alors !!!!!
  JTextArea(int rows , int clomnss)

J.BAHOLE
0
Rejoignez-nous