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 probleme racine


Sujet :

Composants Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 193
    Par défaut JTree probleme racine
    Salut,

    j ai créé une classe extends JTree, n ayant jamais utilisé cet objet je découvre un peu.

    Mais je me rend compte qu'il faut spécifier la racine avant de créer le JTree:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    DefaultMutableTreeNode racine = new DefaultMutableTreeNode("c’est la racine") ;
    JTree brol = new JTree (racine);
    Il n y a nul part de : setRoot ou autre.

    Donc moi ma classe extends JTree, donc je suis obligé d'apeller : super (...) en premier ... donc je sais pas add d objets ... je sais pas si vous cerner le truc. Ca doit d office etre faisable mais je vois pas comment :s

    Merci d avance

  2. #2
    Membre chevronné Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Par défaut
    Bienvenue dans l'API Swing

    Le design pattern MVC est utilisé pour tous les composants... Chaque JTree est associé à un TreeModel

    regarde sur le site de sun, tout est expliqué : http://java.sun.com/docs/books/tutor...ents/tree.html

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 76
    Par défaut
    salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    DefaultMutableTreeNode chapitre1 = new DefaultMutableTreeNode ("chapitre 1");
    racine.add(chapitre1);
     
    DefaultMutableTreeNode paragrahe1 = new DefaultMutableTreeNode ("paragraphe1");
    chapitre1.add(paragraphe1);
    etc ...

    la FAQ JavaGUI du forum possède pas mal de trucs intéressants sur les JTree

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 193
    Par défaut
    Oki j irai voir ca, grand merci

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 193
    Par défaut
    Epistocles je ne pense pas que tu aie saisis ma question en fait.

    J arrive a add des nodes, mais le probleme c est qu il faut add les nodes AVANT de creer le JTree.

    Et que moi j'ai prévu une classe extends JTree.

    Le constructeur de JTree recoit le root Node, MAIS je ne peux apeller : super (root) QUE au debut de ma classe (a ce moment là ni root ni aucune node n est crée ...)

  6. #6
    Membre chevronné Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Par défaut
    Citation Envoyé par Bardack
    Epistocles je ne pense pas que tu aie saisis ma question en fait.

    J arrive a add des nodes, mais le probleme c est qu il faut add les nodes AVANT de creer le JTree.

    Et que moi j'ai prévu une classe extends JTree.

    Le constructeur de JTree recoit le root Node, MAIS je ne peux apeller : super (root) QUE au debut de ma classe (a ce moment là ni root ni aucune node n est crée ...)
    Tu peux changer la racine de ton Jtree... Je t'avais indiqué comment chercher, et je pensais que tu y arriverais...

    Il faut passer par ton ModelTree

    Si tu as fait un new Jtree(TreeNode root), alors tu as implicitement créé un DefaultTreeModel ayant pour racine le TreeNode root, et ce DefaultTreeModel est associé à ton JTree...

    Si tu souhaites modifier cette racine, il te faut donc faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((DefaultTreeModel)tonJTree.getModel()).setRoot(maNouvelleRacine);
    (A noter ton JTree sera mis à jour automatiquement, le setRoot de DefaultTreeMode générant un évènement... ).

  7. #7
    Membre éclairé
    Inscrit en
    Décembre 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 76
    Par défaut
    c'est pourtant dans la FAQ

    sinon le HowTo de Sun est très bien fait dessus, et ça aussi, une ref que je garde et qui m'a bien expliqué ce souci (on l'a tous eu à un moment ou un autre) : la modification dynamique

    http://prevert.upmf-grenoble.fr/Prog...ing/JTree.html

    tu dois instancier une implementation DefaultTreeModel de l'interface TreeModel avec comme argument ton noeud racine, et passer cet objet comme argument de l'instanciation de ton JTree.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 193
    Par défaut
    Voilà qui est résolu

    Reste un problème avec le drag and drop mais dans l'ensemble c est OK

    Merci

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

Discussions similaires

  1. JTree probleme pour mettre à jour
    Par ____22 dans le forum Composants
    Réponses: 0
    Dernier message: 10/09/2010, 12h52
  2. [JTree] probleme non reconnaissance du noeud spécifié en ajout
    Par youssefkermel dans le forum Composants
    Réponses: 0
    Dernier message: 28/04/2009, 13h41
  3. [Swing][JTree] Probleme de reload
    Par nicdo77 dans le forum Composants
    Réponses: 2
    Dernier message: 20/08/2007, 09h54
  4. Problème Racine carrée
    Par Jean-Michel Ormes dans le forum Débuter
    Réponses: 7
    Dernier message: 09/08/2007, 18h16
  5. [JTree] Probleme création noeud
    Par tittoto dans le forum Composants
    Réponses: 8
    Dernier message: 02/04/2007, 15h26

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