IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

Comment faire pour que la taille d'un JTextArea augmente au fur et à mesure que du texte s'y ajoute ?


Sujet :

Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 28
    Points
    28
    Par défaut Comment faire pour que la taille d'un JTextArea augmente au fur et à mesure que du texte s'y ajoute ?
    Bonjour,
    dans l'application que je développe, un serveur communique avec un client et tous les messages reçus de la part du client s'affiche dans un textarea.
    jusque la ça marche. Mais,1- lorsque on depasse la dernière ligne de mon jtextarea, rien plus ne s'affiche .
    2-le scroll pane associé à mon textarea ne descend pas au fur et à mesure que du texte s'ajoute, elle reste en haut.
    veuillez m'aider. ça me bloque depuis deux jours et j'ai fait tant de recherche à ce propos mais en vain.
    je vous remercie

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    as-tu essayé un validate() sur le scrollpane après ajout de texte ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 540
    Points : 532
    Points
    532
    Par défaut
    Ou bien manuellement après insertion, tu force la scrollbar d'aller en bas.

  4. #4
    Membre confirmé Avatar de javaNavCha
    Homme Profil pro
    EKG Group
    Inscrit en
    Juillet 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : EKG Group
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2009
    Messages : 311
    Points : 631
    Points
    631
    Par défaut
    Citation Envoyé par b_imen Voir le message
    Bonjour,
    dans l'application que je développe, un serveur communique avec un client et tous les messages reçus de la part du client s'affiche dans un textarea.
    jusque la ça marche. Mais,1- lorsque on depasse la dernière ligne de mon jtextarea, rien plus ne s'affiche .
    2-le scroll pane associé à mon textarea ne descend pas au fur et à mesure que du texte s'ajoute, elle reste en haut.
    veuillez m'aider. ça me bloque depuis deux jours et j'ai fait tant de recherche à ce propos mais en vain.
    je vous remercie
    Salut Imén
    Peux tu poster le code?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    merci Népomucène, la fonction validate() a résolu le problème du scrollpane..
    il ma reste un problème, est que mon texteArea n'affiche pas les messages qui dépasse la dernière ligne..j'ai essayé cette expression que je trouve partout lors de la recherche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jta.setCaretPosition(jta.getText().length());
    ..j'ai mis cette expression après chaque ajout de texte..
    mais il parait que ça ne marche pas..il me semble que mon textarea est statique..son nombre de ligne ne s'incrémente pas au fur et à mesure que du texte s'ajoute..veuillez m'aider et je serai très reconnaissante..Merci

  6. #6
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Si tu veux dire que chaque fois que tu ajoutes du texte,
    il faut descendre la VerticalScrollBar() jusqu'en bas,
    alors tu peux essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    int maxi = monScrollPane.getVerticalScrollBar().getMaximum();
    monScrollPane.getVerticalScrollBar().setValue(maxi);
    c'était d'ailleurs la suggestion de oneagaindoguys

  7. #7
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Serais tu en train d'essayer de mettre à jour ta JTextArea depuis un Thread externe? (normalement les communications avec un serveur doivent être gérées dans un Thread à part).

    Dans ce cas je t'invite très fort à lire l'article suivant: http://gfx.developpez.com/tutoriel/j...ing-threading/

  8. #8
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    merci pour vos réponses..
    oui sinok, c'est bien ce que vous dites..je vous remercie pour le lien..j'espère qu'il m'aidera à résoudre mon problème..je vais vous mettre au courant..
    quant au scrollpane, ça marche bien Népomucène, il descend automatiquement..je n'ai pas bien compris la proposition de oneagaindoguys..j'ai cru qu'il vouait dire le faire descendre à l'aide de la souris..bref, il me reste le problème de mon jtextarea statique..Merci

  9. #9
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    Bonjour à tous les professionnels et les débutants..
    je vous remercie pour vos réponses qui ont été si utiles..
    je viens de résoudre le problème lié à mon jtextarea..
    l'erreur réside dans le fait que la valeur de la propriété setpreferredsize de mon textarea était forcer à prendre la taille du pannel..
    j'ai changé cela et je l'avait remplacé par des simples valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jta.setpreferredsize(4,22);
    et maintenant mon la taille du textarea s'incrémente au fur et à mesure que du texte s'y ajoute sans oublier biensur la fonction setcaretposition(jta.getText().length);..
    Merci

  10. #10
    Membre confirmé Avatar de javaNavCha
    Homme Profil pro
    EKG Group
    Inscrit en
    Juillet 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : EKG Group
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2009
    Messages : 311
    Points : 631
    Points
    631
    Par défaut
    Tu peux jouer sur le nombre de ligne de ton jtextArea en ajouter un lister pour chaque insertion de caractère, puis tu définies la longueur de ton composant...
    Bien sûr avec un Layout null

  11. #11
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 51
    Points : 28
    Points
    28
    Par défaut
    @ javanavcha: je crois que c'est bien ce que vous dites..il fallait que j'aille petit à petit jusqu'à ce que j'arrive à trouver l'origine de l'erreur et le corriger..
    chui debutante
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 09/06/2006, 14h49
  2. [VB6]Comment faire pour que le caption d'une ARProgressBar..
    Par MegaBigBoss dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 02/04/2006, 20h42
  3. comment faire pour que plusieurs user utilise mem macro?
    Par megapacman dans le forum Access
    Réponses: 4
    Dernier message: 27/03/2006, 16h55
  4. comment faire pour la cellule desside de ça taille avec les
    Par JAVA Good dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/02/2006, 15h37
  5. CSS: comment faire pour que mes coins soit arrondi
    Par pierrot10 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 16/02/2006, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo