Olá a todos,
gostaria de saber se tem alguma maneira de colocar ícones personalizados em uma JTree???
[]'s
[quote=“vivi_grieco”]Olá a todos,
gostaria de saber se tem alguma maneira de colocar ícones personalizados em uma JTree???
[]'s[/quote]
Tem sim viv… bico 
É so extender a classe DefaultTreeCellRenderer ( renderer da JTree ) e no método getTreeCellRendererComponent sefinir seu icone pelo metodo setIcon().  
Certo ?!
Abraços!
desculpa minha ignorância… nunca trabalhei com JTree antes…  vc poderia me dar um exemplo de cmo fazer isso??? :]
 vc poderia me dar um exemplo de cmo fazer isso??? :]
[code]/**
*
- 
@author Administrador 
 */
 public class MyTreeRenderer extends javax.swing.tree.DefaultTreeCellRenderer {/** Creates a new instance of MyTreeRenderer */ 
 public MyTreeRenderer() {
 }/** - 
Retorna o componente de vizualizacao do node da TreeView. 
 */
 public Component getTreeCellRendererComponent(
 JTree tree,
 Object value,
 boolean sel,
 boolean expanded,
 boolean leaf,
 int row,
 boolean hasfocus) {setIcon({seu icone}); setFont(new Font("Arial", Font.PLAIN, 10)); setText(value.toString()); return this;
 }; 
 }
 [/code]
- 
Adaptando na JTree
[code]    /**
* @param args the command line arguments
*/
public static void main(String[] args) {
    JFrame frame = new JFrame("JTree");
    
    MyTreeRenderer renderer = new MyTreeRenderer();
    
    JTree tree = new JTree();
    tree.setCellRenderer(renderer);
    
    frame.getContentPane().add(tree, BorderLayout.CENTER);
    frame.setSize(600,400);
    frame.show();
    
}
[/code]
É isso ai Vivi…
Abraços
eu fiz isso, só que mesmo assim o ícone não aparece… 
Aparece alguma coisa pelo menos ? Tipo a tree com os icones default dela ? Ou fica brando e so aparece o texto ? Vc chegou a ver se ele ta passando pelo renderer que vc criou? Se ao menos passa pelo renderer, vai ver o modo que vc ta referenciando a imagem nao ta achando ela… O que vc ta colocando no setIcon();
Rs… desculpa o tanto de pergunta, mas…
Abraços,
oi Bruno,
consegui q aparecesse…
só me tira uma dúvida… se eu coloco setLeafIcon ou setOpenIcon ao invés de setIcon,  nao aparece imagem nenhuma… vc sabe pq???
[/code]
consegui!!! modeifiquei um pouco o código e deu certo… 
brigadinha!!!
[quote=“vivi_grieco”]consegui!!! modeifiquei um pouco o código e deu certo… 
brigadinha!!![/quote]
Da API
   setClosedIcon(Icon newIcon)
          Sets the icon used to represent non-leaf nodes that are not expanded.
   setLeafIcon(Icon newIcon)
          Sets the icon used to represent leaf nodes.
   setOpenIcon(Icon newIcon)
          Sets the icon used to represent non-leaf nodes that are expanded.O setIcon é herdado do componente default que ele retorna.
QUando vc usa os outros métodos do proprio DefaultTreeCellRenderer, vc aproveita a logica criada para testar se esta aberto, fechado, etc…
Abraços,