Accueil > Forum > > > > [JTree] taille de l'affichage du texte d'un noeud
[JTree] taille de l'affichage du texte d'un noeud
vendredi 9 juin 2006 à 12:25:33 |
[JTree] taille de l'affichage du texte d'un noeud

cbil
|
Bonjour,
Je souhaite modifier l'affichage du texte des noeuds d'un JTree selon le choix de l'utilisateur.
Pour cela j'utilise setUserObject pour chaque noeud en recreeant ce dernier par le nouveau texte. Ensuite je fais un updateUI pour le rafraichissement.
Tout fonctionne sauf que si le texte depasse la taille de l'ancien texte, il n'est pas affiché entierement (se termine par '...') meme si il y a de la place pour l'affichage (en plus mon JTree est dans une JScrollPane)
En creant completement un Arbre ca fonctionne car le noeud (largeur) prend la taille du texte (donc pas de remplacement par les '...') mais par un changement sans recréation, ca ne modifie pas la taille de creation de base.
Y a-t-il une méthode pour résoudre ce problème ? je n'en ai pas trouvé, mais je galère un peu avec les noms des méthodes des Arbres.
Le DefaultMutableTreeNode est recréé dans le setUserObject.
Merci Cbil
|
|
vendredi 9 juin 2006 à 12:29:14 |
Re : [JTree] taille de l'affichage du texte d'un noeud

cbil
|
Je viens de remarquer un truc par contre. Pour le texte de la racine, il n'y a pas de problème, la taille de l'affichage du texte du noeud s'est correctement agrandi (pas de remplacement avec les '...' )
a+
|
|
vendredi 9 juin 2006 à 12:57:51 |
Re : [JTree] taille de l'affichage du texte d'un noeud
|
vendredi 9 juin 2006 à 14:28:54 |
Re : [JTree] taille de l'affichage du texte d'un noeud

cbil
|
Merci beaucoup, en allant sur le how to , j'ai trouvé. [ Lien ]Il fallait mettre : monArbre.setShowsRootHandles(true);
A+ Cbil
|
|
vendredi 9 juin 2006 à 14:40:30 |
Re : [JTree] taille de l'affichage du texte d'un noeud

cbil
|
Euh non ca marche pas, ca l'air aleatoire en fait :(, je retourne sur how to lol ^^
|
|
vendredi 9 juin 2006 à 16:13:28 |
Re : [JTree] taille de l'affichage du texte d'un noeud

cbil
|
J'ai toujours pas trouvé, j'ai testé plusieurs methodes mais rien a faire (dont également; dans le DefaultTreeCellRenderer)
|
|
vendredi 9 juin 2006 à 16:32:08 |
Re : [JTree] taille de l'affichage du texte d'un noeud

cbil
|
Encore re,
Quand je disais que c'etait aleatoire, ce n'est evidemment pas le cas. J'ai trouvé quand est-ce que le probleme apparait ou non.
Des que l'arborescence est affiché, si un noeud est non visible (le parent n'a pas été déroulé) et qu'on le rend visible lorsqu'il y a le "plus long" texte de charger (second texte et non texte d'origine plus court) alors ca fonctionne, le noeud a pris la taille du long texte.
Quand on reharge le premier texte court, le noeud à garder la taille du texte long (ca se voit à la sélection d'un noeud) (donc forcement, le texte court est entierement visible).
La grandeur d'affichage est donc definit au premier affichage d'un noeud et non au chargement de la JTree dans le panel.
Si vous avez des idées ........ 
A+ Cbil
|
|
vendredi 9 juin 2006 à 16:52:35 |
Re : [JTree] taille de l'affichage du texte d'un noeud

Twinuts
|
heu j'ai pas tt compris la  faut etre bien clair un vendredi(mon cerval se prepare pour sa lobotomie du week end) WORA
|
|
vendredi 9 juin 2006 à 17:45:49 |
Re : [JTree] taille de l'affichage du texte d'un noeud

cbil
|
Lol oui à force d'ajouter du texte, je m'embrouille aussi ^^, désolé.
Admettons que j'ai l'arbre suivant :
RACINE * Noeud1 -> Noeud2 --> enfant1 --> enfant2 --> enfant3
Si je change le nom d'affichage de enfant2 par exemple à l'aide d'un bouton et de la methode enfant2.setUserObject(new NoeudArbre(enfant2.param1(), ....., "Nouveau nom"); (NoeudArbre est une classe extends DefaultMutableTreeNode) alors j'obtiens l'arbre suivant :
RACINE * Noeud1 -> Noeud2 --> enfant1 --> Nouv... --> enfant3
----------------------------------- Maintenant j'ai le meme arbre mais avec Noeud2 qui n'est pas déroulé. :
RACINE * Noeud1 * Noeud2
les enfant de Noeud2 sont bien sur initialisé à enfant1, enfant2, enfant3. Avant de double cliquer sur Noeud2 pour affiché ses enfants, je change le noeud de enfant2 par le meme texte que precedemment ("Nouveau nom") et la meme methode.
Voici ce que j'obtiens, un bon affichage :
RACINE * Noeud1 -> Noeud2 --> enfant1 --> Nouveau nom --> enfant3
Mais si on remodifie le nom de "Nouveau nom" par "enfant2, et que l'on sélectionne ce noeud on se rend compte qu'il a conservé la taille de "Nouveau nom" : [Nouveau nom] ----> [enfant2 ] (la taille n'a pas été remise à [enfant2]
CONCLUSION
La taille du JTree est initialisé lors du premier affichage du noeud concerné et non lors de la creation ou de l'affichage du JTree dans le panel.
Ensuite, en faisant un setPreferredSize, ca marche également pour changer le texte, mais je n'ai pas de solution pour avoir une taille correspondant au texte ecrit. (et en plus il doit y avoir plus simple)
a+, merci beaucoup, et bon week-end !
Cbil
|
|
vendredi 9 juin 2006 à 18:38:01 |
Re : [JTree] taille de l'affichage du texte d'un noeud
|
Cette discussion est classée dans : taille, texte, affichage, noeud, jtree
Répondre à ce message
Sujets en rapport avec ce message
Jtree et affichage de fils sur noeud expand [ par FRAJA ]
Bonjour,j'ai un Jtree dans JScrollPane.//je résume// je réalise une sélection de mon noeud avec la souris._current = (DefaultMutableTreeNode)tree.getL
correspondance textarea avec un noeud jtree [ par coltman ]
bonjour à tous, j'ai besoin de réaliser un programme qui me permet de rentrer des caractéristiques relatives à noeud d'un arbre d'elements. les elen
Taille Texte Jlabel [ par eldiablo25 ]
Bonjour a tous,Je suis debutant et je voudrais savoir comment on fait pour ajuster le teste d'un jlabel à la taille de celui-ci. En gros je veux que m
Changement de taille de police dynamiquement ? [ par Syphou ]
Salut tout le monde,Voici mon problème, il a été posé a plusieurs programmeurs, ça a l'air tout bête mais ça ne l'est pas ...Il faudrait que j'arrive
jtree + recuper le nom de variable d'un noeud [ par fraisa1985 ]
Salut a tous ,comment je peux recuperer le nom de varaible d'un noeud d'une jtree aprés le clic sur cette noeud.Je sais qu'il y-a la méthode setuserob
Capturer un noeud (expanded) dans un JTree [ par IngCommandos ]
Bonjour,J'ai un JTree dynamique (dont les noeuds sont construits à partir de requêtes de bases de données)Je voulais trouver une solutions pour ne pas
Charger un fichier text dans un JTree [ par Phenix40 ]
Salut tout le monde, Je travail sur une petite application Java où je dois créer un JTree à partir d'un fichier texte dont la structure est la suivant
jtree et double click [ par raline ]
salut je dispose d'un jtree et je veux ke lorsque je double-clike sur un noeud d'fichier, il s'ouvre. s'il vous plait, comment associer une action de
JTree: Obtenir le numéro de la ligne d'un noeud de JTree [ par darkGeek86 ]
Salut tout le monde, j'ai besoin d'obtenir le numéro de la ligne des noeuds d'un arbre JTree, j'ai essayé d'utiliser la méthode getIndex() mais ça n'a
JTree + JTextfield [ par DeNeBj ]
Bonjour, Voila j'ai creé une arborescence en java avec un JTree( defaultmodel ...) Mais voila j'aimerais mettre des boutons ou des textfields aprés le
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|