- 所有已知的实现类:
-
DefaultTreeCellRenderer
public interface TreeCellRenderer
定义了显示树节点的对象的要求。请参阅Java教程中的如何使用树,了解实现显示自定义图标的树单元格渲染器的示例。
-
Method Summary
Modifier and TypeMethodDescriptiongetTreeCellRendererComponent
(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) 将当前树单元格的值设置为value
。
-
Method Details
-
getTreeCellRendererComponent
Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) 将当前树单元格的值设置为value
。如果selected
为true,则将绘制该单元格,就像被选中一样。如果expanded
为true,则表示节点当前已展开,如果leaf
为true,则表示节点代表叶子节点,如果hasFocus
为true,则表示节点当前具有焦点。tree
是为其配置接收器的JTree
。返回渲染器用于绘制值的Component
。TreeCellRenderer
还负责渲染表示树当前DnD放置位置的单元格。如果此渲染器关心渲染DnD放置位置,则应直接查询树以查看给定行是否表示放置位置:JTree.DropLocation dropLocation = tree.getDropLocation(); if (dropLocation != null && dropLocation.getChildIndex() == -1 && tree.getRowForPath(dropLocation.getPath()) == row) { // 此行表示当前放置位置 // 因此特殊渲染,也许使用不同的颜色 }
- 参数:
-
tree
- 为其配置接收器 -
value
- 要渲染的值 -
selected
- 节点是否被选中 -
expanded
- 节点是否已展开 -
leaf
- 节点是否为叶子节点 -
row
- 行索引 -
hasFocus
- 节点是否具有焦点 - 返回:
-
渲染器用于绘制值的
Component
-