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 :

jTree et affichage


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Par défaut jTree et affichage
    Re bonjour tout le monde.

    J'ai changer complètement ma classe car elle générer beaucoup d'erreur.

    Quand depuis mon main, je fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {}
    avec à l'intérieur un code simple tel que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ObjTree obj = new ObjTree();
    obj.addNode("Test", null);
     
            DefaultMutableTreeNode T = obj.addNode("Essai", null);
                obj.addNode("Tests & essais", T);
    rien ne s'affiche dans mon jTree.
    Je soupçonne tout d'abord ma classe de mal gérer le truc mais quand j'initialise le programme avec ceci:
    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
     
    //Initialisation des carractéristiques de la form
        private void initForm() {
     
     
            //Change l'icône de l'application
            String pathIcon = "../Icone 32x32/img_01.png";
            this.setIconImage(java.awt.Toolkit.getDefaultToolkit().getImage(getClass().getResource(pathIcon)));
     
            //Change le titre de l'application
            this.setTitle(titleAppli());
     
            //Crée une instance de ObjTree()
            ObjTree obj = new ObjTree();
     
            //Affecte au jSplitPane2, un objet JTree()
            jSplitPane2.setLeftComponent(obj.createJTree());
     
            obj.addNode("Test", null);
     
            DefaultMutableTreeNode T = obj.addNode("Essai", null);
                obj.addNode("Tests & essais", T);
        }
    Et bien ça marche.

    Je ne voie pas pourquoi il ne veut pas afficher quand c'est un bouton.

    Idem quand je fait la recherche depuis un File au travers de ma classe.
    Depuis le main je fais
    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
     
    private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {                                           
            /*
             * Bouton du menu Fichier -> Créer -> Dossier Rpg
             */
     
            //Crée une instance de ObjFileChooser
            ObjFileChooser objChooser = new ObjFileChooser();
     
            //Crée l'objet JFileChooser
            objChooser.createJFileChosser();
     
     
            //Créer une instance ObjTree
            ObjTree objTree = new ObjTree();
     
     
            objTree.affFileTree(objChooser.getActionJFileChooser());
     
        }
    Rien ne s'affiche !

    Voila ce que j'ai fait dans ma classe.
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    package appliClasses;
     
    import javax.swing.JScrollPane;
    import javax.swing.JTree;
    import javax.swing.tree.DefaultMutableTreeNode;
    import javax.swing.tree.DefaultTreeModel;
     
    import java.awt.Dimension;
    import java.io.File;
     
     
    public class ObjTree {
        /*
         * Méthode : Fonction
         * Action : Créer un JTree
         * Reçois : Rien
         */
        public JScrollPane createJTree() {
            //Affiche un JTree() manitulable (Handle)
            myTree.setShowsRootHandles(true);
     
            //Modifie les caractéristiques du JScrollPane
            myScrollPane.setPreferredSize(new Dimension(100, 100));
     
            //Affiche dans le JScrollPane le JTree
            myScrollPane.setViewportView(myTree);
     
            //return myTree;
            return myScrollPane;
        }
     
        /*
         * Méthode : Fonction
         * Action : Ajouter un noeud
         * Reçois : Un nom de noeud et le nom d'u noeud parent
         */
        public DefaultMutableTreeNode addNode(String nameNode, DefaultMutableTreeNode parentNode) {
             //Crée une instance de DefaultMutableTreeNode
             DefaultMutableTreeNode node = new DefaultMutableTreeNode(nameNode);
     
             if(parentNode == null) {
                ((DefaultMutableTreeNode)myTree.getModel().getRoot()).add(node);
             }
             else {
                parentNode.add(node);
             }
     
             return node;
         }
     
        /*
         * Méthode : Fonction
         * Action : Afficher le contenu d'un répertoire dans un JTree
         * Reçois : Un File()
         */
         public void affFileTree(File fileSelected) {
     
             //Tant qu'il reste des fichier ou dossier à afficher
            for(int i = 0; i < fileSelected.listFiles().length; i++) {
     
                addNode(fileSelected.listFiles()[i].getName(), null);
            }
     
            myTree.expandRow(0);
         }
     
     
        /*
         * Les champs de la classe
         */
        private final JScrollPane myScrollPane = new JScrollPane();
        private final JTree myTree = new JTree(new DefaultTreeModel(new DefaultMutableTreeNode("Rpg")));
    }
    J'aimerais comprendre ce qui ne va pas !

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 8
    Par défaut
    Salut,

    J'ai eu un problème similaire de mise à jours de JTree.

    Tu as essayé de revalider ton JTree?

    Sinon c'est peut-être un peu barbare, mais tu peux ré instancier ton JTree à chaque modification

Discussions similaires

  1. JTree et affichage du contenu.
    Par Noobboy dans le forum Composants
    Réponses: 0
    Dernier message: 13/11/2008, 22h59
  2. [JTree] Rafraichissement affichage
    Par Sp4ce dans le forum Composants
    Réponses: 4
    Dernier message: 21/09/2007, 10h09
  3. [Swing]Problème d'affichage sur un JTree
    Par tomca dans le forum Composants
    Réponses: 4
    Dernier message: 19/01/2006, 10h41
  4. [JTree] Réduit à l'affichage
    Par Micky1407 dans le forum Composants
    Réponses: 2
    Dernier message: 08/06/2005, 11h08
  5. [JTree] Affichage des Noms de dossiers
    Par Dextro dans le forum Composants
    Réponses: 3
    Dernier message: 04/05/2005, 12h54

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