bonjour mon probleme est le suivant :

j ai un frame qui se decompose en deux parties :

la premiere est la partie reservée à un JTree et la deuxieme doit etre un Jpane qui afficher des informations : ces infos sont relatives à la selection de chaque feuille de l arbre.

sauf que je bloque sur la methode de selction des noeuds de l arbre qui elle retourne un Void
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
 
 
 
   tree.addTreeSelectionListener(new TreeSelectionListener(){
 
 
        	public void valueChanged(TreeSelectionEvent e) {
		        DefaultMutableTreeNode node = (DefaultMutableTreeNode)
                								tree.getLastSelectedPathComponent();
 
	if (node == null) {
	System.out.println("node == null");
             return;
				}
 
	Object nodeInfo = node.getUserObject();
 
	if (node.isLeaf()) {
	BookInfo book = (BookInfo)nodeInfo;
	f (node.toString()== leafProvDisc){
 
	System.out.println(leafProvDisc);
             testURL = TreeDemo.class.getResource("tesProviderDisc.txt");;
	displayURL(book.fichierURL);
             return;
	}
            else
              System.out.println("Autre");
	 displayURL(book.fichierURL);
 
	} 
                  else {
	System.out.println("texte (not leaf) : "+node.toString());
 
	return;}
               }
	});
j ai essayé de faire une methode qui retourne un JeditorPane et qui conditionne ce qu il va contienir à la selection de la feuille..sauf que je bloque sur la methode de selction. je sais pas comment faire voici le code :

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
 
private JPanel buildContentPane(){
 
  DefaultMutableTreeNode node = (DefaultMutableTreeNode)
  tree.getLastSelectedPathComponent();
  JPanel saisiePane = new JPanel();
  saisiePane.setLayout(new FlowLayout());	// saisiePane c est le pane que je voudrai rendre reactif
 
        	JLabel textFieldLabel = new JLabel(textFieldString + ": "); 
        	textFieldLabel.setLabelFor(textField);
        	//saisiePane.add(textFieldLabel);
        	//textField = new JTextField("TESTEUR");
             //saisiePane.add(textField);
    	//textField.setActionCommand(textFieldString);
 
    		if (node == null) {
				System.out.println("node == null");
				return saisiePane;
			}
 
 
    		Object nodeInfo = node.getUserObject();
 
			if (node.isLeaf()) {
				BookInfo book = (BookInfo)nodeInfo;
				if (node.toString()== leafProvDisc){
 
 
		        textFieldLabel.setLabelFor(textField);
		        saisiePane.add(textFieldLabel);
 
 
		textField = new JTextField("TESTEUR");
		saisiePane.add(textField);
		textField.setActionCommand(textFieldString);
		System.out.println(leafProvDisc);
		return saisiePane;}
 
                else {
	   textField = new JTextField("L AUTRE");
	   saisiePane.add(textField);
	    textField.setActionCommand(textFieldString);
	System.out.println("Autre");}}
 
           else {System.out.println("texte (not leaf) : "+node.toString());
                   return saisiePane;
                  }
 
return saisiePane;}
merci de votre aide