Hallo zusammen,
mit meinem JTree stimmt etwas nicht :
Ich habe einen eigenen Renderer geschrieben und die Methode getTreeCellRendererComponent überschrieben:
Mir werden auch die richtigen Werte ausgegeben, nur leider sieht mein Baum sehr seltsam aus. Beim letzten ausgeklappten Knoten wird der Text nicht richtig dargestellt. Außerdem ist der Abstand verändert:
Wenn ich den Renderer weglasse (also ohne tree.setCellRenderer(new TreeRenderer())) sieht mein Baum wieder ganz normal aus.
Hat jemand schon mal ähnliches beobachtet oder eine Idee, was ich falsch gemacht habe?
Vielen Dank
Maren
mit meinem JTree stimmt etwas nicht :
Ich habe einen eigenen Renderer geschrieben und die Methode getTreeCellRendererComponent überschrieben:
Code:
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected,
boolean expanded, boolean leaf, int row, boolean hasFocus){
super.getTreeCellRendererComponent( tree, value, selected, expanded, leaf, row, hasFocus );
ImageIcon icon = null;
TreePath pfad = tree.getPathForRow(row);
if (pfad!=null) {
try {
System.out.println(pfad.getPathCount() + " " + pfad + " " + value);
if(pfad.getPathCount()==1) // Projekt
icon = new ImageIcon(new URL(applet.getCodeBase(),"image/projekt_N.png"));
else if (pfad.getPathCount()==2) // Publikation
icon = new ImageIcon(new URL(applet.getCodeBase(),"image/publikation_N.png"));
else if (pfad.getPathCount()==3) // Seite
icon = new ImageIcon(new URL(applet.getCodeBase(),"image/seite_N.png"));
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
setIcon(icon);
setForeground(new Color(103,103,103));
return this;
}
}
Mir werden auch die richtigen Werte ausgegeben, nur leider sieht mein Baum sehr seltsam aus. Beim letzten ausgeklappten Knoten wird der Text nicht richtig dargestellt. Außerdem ist der Abstand verändert:
Wenn ich den Renderer weglasse (also ohne tree.setCellRenderer(new TreeRenderer())) sieht mein Baum wieder ganz normal aus.
Hat jemand schon mal ähnliches beobachtet oder eine Idee, was ich falsch gemacht habe?
Vielen Dank
Maren