Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Nb de caractère dans un JTextArea [ Divers / Général ] (Cyberdevil)

mercredi 12 juillet 2006 à 11:15:29 | Nb de caractère dans un JTextArea

Cyberdevil

Membre Club
Bonjour tout le monde !

J'ai un petit problème en java....
En fait j'aimerais savoir le nb de caractère qu'il y a dans un JTextArea en "temps réel" ! Alors j'ai ajouter un keyListener à mon JTextArea mais le problème c'est que quand l'événmenet est généré et ben le caractère n'est pas encore ajouté au JTextArea. Donc si je fais un monTextArea.getText().length() et ben il me manquera un caractère. Et si je fais +1 ca pose problème car admettons que lutilisateur appuise sur backspace ou une flèche et ben ça comptabilisera un caractère faux jusqu'au prochain appui... J'espère que quelqu'un à la solution !

Je vous remerci d'avance

Cyberdevil
[ Lien ]

mercredi 12 juillet 2006 à 11:50:01 | Re : Nb de caractère dans un JTextArea

Twinuts

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !

Salut,

regarde du coté de setDocument et redefinie le Document
http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/text/Document.html

il y a pas plus temps reel et tu as la maitrise des insertion et supression de char

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA

mercredi 12 juillet 2006 à 12:55:27 | Re : Nb de caractère dans un JTextArea

Cyberdevil

Membre Club
Excellent !

Merci beaucoup ça fonctionne parfaitement.

Pour information:
J'ai redéfini la classe PlainDocument et j'ai réimplémenté les méthode removeUpdate et insertString de cette classe. Dans ces méthode j'incrémente une varaible compteur de caractère. Et je met à jour mon label passé en paramètre dans la méthode constructeur de ma nouvelle classe. Ca donne ça:

public class SMSDocument extends PlainDocument {
   
    JLabel lblStatus;
   
    int nbChar=0;
   
    public SMSDocument(JLabel lblStatus)
    {
        super();
        this.lblStatus=lblStatus;
    }
    protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
    {
        nbChar-=chng.getLength();
        updateLabel();
    }
   
    void updateLabel()
    {

      /* Met à jour le label avec le nb de char */
      /* ... */
    }
   
    public void insertString(int offs,
            String str,
            AttributeSet a)
     throws BadLocationException
     {
        super.insertString(offs, str, a);
        nbChar+=str.length();
        updateLabel();
     }
}


Pour utilisé:

JLabel lbl=new JLabel("Nb char: 0");
JTextArea txt=new JTextArea("");
txt.setDocument(lbl);


Et voila :-) !!

Merci encore twinuts pour cette très bonne idée !


Cyberdevil
[ Lien ]

mercredi 12 juillet 2006 à 12:58:12 | Re : Nb de caractère dans un JTextArea

Cyberdevil

Membre Club
Oups une petite erreur s'est infiltrée (apparemment ça fonctionne quand meme mais bon):

La méthode removeUpdate doit être celle la et pas celle du message précédent:

    protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
    {
        super.removeUpdate(chng);
        nbChar-=chng.getLength();
        updateLabel();
    }

J'avais oublié l'appel à la méthode originale !

Cyberdevil

mercredi 12 juillet 2006 à 13:40:42 | Re : Nb de caractère dans un JTextArea

Twinuts

Membre Club Administrateur CodeS-SourceS

Mais de rien


------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA



Cette discussion est classé dans : problème, caractère, nb, jtextarea, ben


Répondre à ce message

Sujets en rapport avec ce message

imprimer le contenu d'un JTextArea en java [ par nouha3002 ] Mon problème c'est que j'arrive pas a imprimer le contenu d'une zone de texte(JTextArea), le lancement de l'imprimente se fait sans aucun problème.Com problème avec JScrollPane + JTextArea [ par xkindool ] bonjour tout le monde, j'ai un petit problème avec mon prog, en effet jevoudrais associer une scrollbar à une zone de texte JTextArea. On m'a conseill ASCII: Problème de détection de la touche entrée dans une chaine de caractère [ par cedzed ] Bonjour,J'ai un problème pour détecter dans une chaine de caractère la touche "Entrée", en effet je fais un fichier CSV et mon fichier est mal découpé Problème avec UndoableEditListener sur Document ! [ par Taranael ] Bonjour bonjour !Je travaille actuellement à refaire le bloc notes de Windows en Java avec quelques améliorations (qui sera plus tard encore amélioré Problème pour saisir une chaîne caractère [ par IceFinger ] J'ai besoin d'une bonne interface pour un prog de base de données, je doit donc à l'aide de swing faire des saisies de texte (Je ne peux pas utiliser Probleme affichage dans JTextArea [ par pfovez ] Voila, je lit des données depuis un fichier texteet je les reecrit dans un Jtextareaen fait, je lit trois lignes consécutives dans mon fichier texte e Urgent - merci de votre aide :) [ par duiop ] J'ai un gros problème avec mon appli java. J'ai des graphiques à tracer, mais ses graphiques dépende de données recues par un serveur. Le problème est Problème avec getHSBColor [ par Jarod1980 ] Bonjour tout le monde,Voilà, j'ai un problème que je n'arrive pas à résoudre. Je voudrais tracer les lignes de champs en blanc ici pas de problème et Problème avec JBOSS 4 [ par fanfan78 ] Bonjours à tous !!!Je n'arrive à accèder à JBOSS.A travers La ligne de commande je me place dans le dossier bin de JBOSS, j'execut run, le serveur se problème avec cewolf [ par progrima ] Sltpour créer des courbes dans des pages jsp, j ai utilisé le cewolf, j'ai essayé l 'xemple du tuto et ça marche. j'ai essayé ca avec des exemples per


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,187 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.