benhaze
Mitglied Platinum
Hallo!
Ich habe folgendes Problem:
Ich hab nen normalen JTree.
diesem habe ich meinen TreeCellRenderer untergeschoben...
die methode getTreeCellRendererComponent(...) liefert halt eine geeignete Komponente zum Darstellen des Knotens im Baum.
Wenn es sich um einen bestimmten Knoten handelt, soll er einfach den Text im Baum
*fett* darstellen.
Das klappt auch. Allerdings wird durch das *fett* darstellen, der Text in seiner Dimension dadurch etwas größer, das Label (welches den Text darstellt) allerdings nicht.
Der Text wird also quasi abgeschnitten.
Hat evtl. jemand ne idee, was ich da machen kann?
(Hatte an sowas gedacht wie myTree.validate()...klappt aber nicht....)
Danke!
Ich habe folgendes Problem:
Ich hab nen normalen JTree.
diesem habe ich meinen TreeCellRenderer untergeschoben...
die methode getTreeCellRendererComponent(...) liefert halt eine geeignete Komponente zum Darstellen des Knotens im Baum.
Wenn es sich um einen bestimmten Knoten handelt, soll er einfach den Text im Baum
*fett* darstellen.
Das klappt auch. Allerdings wird durch das *fett* darstellen, der Text in seiner Dimension dadurch etwas größer, das Label (welches den Text darstellt) allerdings nicht.
Der Text wird also quasi abgeschnitten.
Hat evtl. jemand ne idee, was ich da machen kann?
(Hatte an sowas gedacht wie myTree.validate()...klappt aber nicht....)
Danke!
Code:
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus)
{
Component ret = super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
if (value instanceof MyTreeNode)
{
JLabel lbl = (JLabel)ret;
MyTreeNode node = (MyTreeNode)value;
if (node.getListDetailAsClonePanel() != null)
{
String text = lbl.getText();
String boldText = "<html><b>"+ text +"</b></html>";
lbl.setText(boldText);
}
ImageIcon icon = node.getIcon();
if (icon != null)
lbl.setIcon(icon);
}
return ret;
}