voilà ce que je desire:
possedant par exemple un telle jtree
ListesUser
|__Forum_java
| |__J
| |__wassimb
|
|__Forum_Vb
|__x
|__y
|....
Pour J et wassimb ces derniers apartienent au forum java ==>j'insere une icone(x)
Pour x et y ces derniers apartienent au forum VB ==>j'insere une icone(y)
le probleme reside au fait que je n'ai pas trouver comment faire pour tester
sur le parent de la feuille(cad:if(feuille appartient noeud Forum_java)==>insere icone(x)
if(feuille appartient noeud Forum_Vb)==>insere icone(y))
Comment Faire alors ?
j'ai realiser mon jtree mais je n'ai pas su comment integer des test dans cette class pour y ajouter des icones comme je desire Voila ma class:
Code :
- public class RenduArbre extends JPanel implements TreeCellRenderer,MouseMotionListener
- {
- private Icon icone;
- private int rowSelection = -1;
- public RenduArbre(Icon icone)
- {
- super(new FlowLayout());
- this.icone = icone;
- }
- public Component getTreeCellRendererComponent(JTree tree, Object value,
- boolean selected, boolean expanded, boolean leaf, int row,
- boolean hasFocus)
- {
- this.removeAll();
-
- if(leaf)
- {
- JLabel labelIcone = new JLabel(this.icone);
- this.add(labelIcone);
- }
- if(value != null)
- {
- JLabel labelTexte = new JLabel(String.valueOf(value));
- if(selected)
- {
- labelTexte.setForeground(Color.red);
- }
- else
- {
- labelTexte.setForeground(Color.black);
- }
- if(row == this.rowSelection)
- {
- this.setBackground(Color.cyan);
- }
- else
- {
- this.setBackground(Color.white);
- }
- this.add(labelTexte);
- }
- return this;
- }
- arbre.repaint();
- }
- }
|
Je compte sur vous ...
Merci d'avance