Bonjour à tous !

J'ai une petite appli qui utilise beaucoup les JTree.
Je suis en train d'implémenter un système de sauvegarde en XML.

Mon problème est quand je charge un TreePath reconstruit à partir de la sauvegarde, à mon JTree, rien ne se passe


Voici un exemple qui illustre ce que 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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
import java.awt.BorderLayout;
 
import javax.swing.JTree;
import javax.swing.SwingUtilities;
import javax.swing.tree.TreePath;
 
public class TestLoad extends javax.swing.JFrame {
 
	private JTree tree;
 
	public TestLoad() {
		super("test");
		tree = new JTree();
 
		 getContentPane().setLayout(new BorderLayout());
	     getContentPane().add(tree, BorderLayout.CENTER);
	     setSize(500,400);
 
	     DefaultMutableTreeNode[] s1 = new DefaultMutableTreeNode[3];
		s1[0] = new DefaultMutableTreeNode("JTree",true);
		s1[1] = new DefaultMutableTreeNode("colors",true);
		s1[2] = new DefaultMutableTreeNode("blue",false);
 
	     TreePath path = new TreePath(s1);
	     tree.setSelectionPath(path);	
 
	     tree.scrollPathToVisible(path);
 
	     if(tree.isPathSelected(path)) {
	    	 System.out.println("path selected");
	     }
	}
 
	public static void main(String[] args) {
		SwingUtilities.invokeLater(
	            new Runnable() {
	                public void run() {
	                	TestLoad test = new TestLoad();
	                	test.setVisible(true);
	                }
	            });
	}
}

ça me dit que le path est sélectionné, mais rien à l'affichage... vous avez une idée ?

Merci !