Bonjour,

désolée de reposter sur un sujet déjà beaucoup traité, mais malgré tout les autres sujets je n'ai pas pu régler mon problème : je crée un arbre qui s'affiche dans ma fenêtre, je peut créer des nouveaux dossiers qui s'affiche très bien dans mon arbre mais je veux placer des photos dans ces dossiers et pouvoir créer un bouton "rafraichir" pour qu'on puisse les voir.

Jusqu'à présent tout ,es repaint(), reload() et autre
((DefaultTreeModel) arbre.getModel()) ne m'ont pas réussi ...

Je vous met le code,

Pour créer l'arbre :

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
private void listRoot(){
 
			String dirName = this.Workspace;
			File dir = new File(dirName);
			//boolean isCreated = dir.mkdirs();
 
			this.racine = new DefaultMutableTreeNode();
 
			DefaultMutableTreeNode rep = new DefaultMutableTreeNode(dir.getPath());
 
			this.racine.add(rep);
 
			File fil=new File(Workspace);
 
					for(File file : fil.listFiles()){
						System.out.println(file);
 
 
							DefaultMutableTreeNode node = new DefaultMutableTreeNode(file.getName()+"\\");
 
							rep.add(this.listFile(file, node));	
 
					}
 
			this.arbre= new JTree();
		    //Nous créons, avec notre hiérarchie, un arbre
 
		    this.model = new DefaultTreeModel(this.racine);      
		    this.arbre.setModel(this.model);
		    this.arbre.setRootVisible(false);
		    this.arbre.setEditable(true);
 
		    this.pan_arbre.add(new JScrollPane(this.arbre), BorderLayout.CENTER);
		  }
Dans le main :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
listRoot();
bouton_arbre.addActionListener(this); 
 
pan_bouton_arbre.add(bouton_arbre);
	pan_arbre_global.add(pan_arbre, BorderLayout.CENTER);
	pan_arbre_global.add(pan_bouton_arbre, BorderLayout.SOUTH);
	pan_arbre_global.setPreferredSize(new Dimension(200,300));
	pane1.add(pan_arbre_global, BorderLayout.WEST);
    getContentPane().add(pane1);
    pack();
    setVisible(true);
Merci à ceux qui prendront le temps de répondre