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

Composants Java Discussion :

[JTree] expand de la racine par défaut


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de danyboy85
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut [JTree] expand de la racine par défaut
    Bonjour,

    j'ai un composant JTree et je souhaite que par défaut, le noeud racine soit ouvert mais je n'y parviens pas.

    J'ai recherché dans le forum et j'ai trouvé pas mal de choses comme l'utilisation de l'objet TreePath et de la méthode expandPath() mais malgré cela, pas moyen...

    Voici le code de mon JTree :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    DefaultMutableTreeNode racine = new DefaultMutableTreeNode("Quartis Optima");
    TreePath tp = new TreePath(racine.getPath());
    
    
    DefaultTreeModel arbreModele = new DefaultTreeModel(racine);
    monArbre = new JTree(arbreModele);
    monArbre.setCellRenderer(new SiteMapTreeCellRenderer());
    monArbre.expandPath(tp);
    
    
    if (moduleList!=null) {
        for (Module module:moduleList) {
            DefaultMutableTreeNode moduleNode = new DefaultMutableTreeNode(module);
            List<Page> modulePageList = module.listPages();
            for (Page page:modulePageList) {
                DefaultMutableTreeNode pageNode = new DefaultMutableTreeNode(page);
                moduleNode.add(pageNode);
            }
            racine.add(moduleNode);
        }
    }
    et celui de mon renderer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    public class SiteMapTreeCellRenderer extends DefaultTreeCellRenderer {
     
     
     
        @Override
        public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
     
            super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
     
            DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
     
            if (node.getUserObject() instanceof Module) {
                Module m = (Module)node.getUserObject();
                setIcon(m.getIcon());
                setText(m.getName());
            } else if (node.getUserObject() instanceof Page) {
                Page p = (Page)node.getUserObject();
                setIcon(ImageUtils.createImageIcon(p.getIcon(), ""));
                setText(p.getName());
            }
     
     
            return this;
        }
    }
    Si quelqu'un peut m'éclairer...

    Merci d'avance

  2. #2
    Membre éclairé Avatar de danyboy85
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    Bon j'ai peur de ne pas avoir été clair donc voici ce que je souhaite :


  3. #3
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Ouvre le noeud "Quartis Optima" alors...

    javax.swing.JTree.expandRow(int)

    Toujours bien fonctionné pour moi.

  4. #4
    Membre éclairé Avatar de danyboy85
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    JTree monArbre = new JTree(arbreModele);
    monArbre.expandRow(0);
    puis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    monArbre.expandRow(1);
    monArbre.expandRow(2);
    monArbre.expandRow(3);
    monArbre.expandRow(4);
    monArbre.expandRow(5);
    monArbre.expandRow(6);
    monArbre.expandRow(7);
    mais rien n'y fait

  5. #5
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Question con mais tu as les noeuds dans ton arbre à ce moment là au moins ?

  6. #6
    Membre éclairé Avatar de danyboy85
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    Question pas con du tout...

    Enfin si mais le gars à qui tu la poses lui est très con.

    C'était ça merci

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

Discussions similaires

  1. Comportement par défaut d'un JTree
    Par HichIHM dans le forum Composants
    Réponses: 7
    Dernier message: 19/02/2011, 15h07
  2. JTree comment le développer en entier par défaut?
    Par ____22 dans le forum Composants
    Réponses: 1
    Dernier message: 22/07/2010, 21h54
  3. Application racine par défaut
    Par troubleshooting dans le forum Wildfly/JBoss
    Réponses: 0
    Dernier message: 23/04/2010, 11h53
  4. Réponses: 1
    Dernier message: 23/08/2009, 16h56
  5. [RichFaces] Tree, expanded par défaut
    Par Jexou dans le forum JSF
    Réponses: 9
    Dernier message: 22/04/2009, 11h14

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