模块 java.desktop

接口 TreeCellRenderer

所有已知的实现类:
DefaultTreeCellRenderer

public interface TreeCellRenderer
定义显示树节点的对象的要求。有关实现显示自定义图标的树单元格渲染器的示例,请参见 The Java Tutorial 中的 如何使用树木
  • 方法总结

    修饰符和类型
    方法
    描述
    getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
    将当前树单元格的值设置为 value
  • 方法详情

    • getTreeCellRendererComponent

      Component  getTreeCellRendererComponent(JTree  tree, Object  value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
      将当前树单元格的值设置为 value 。如果 selected 为真,则单元格将被绘制为选中状态。如果 expanded 为真,则节点当前展开;如果 leaf 为真,则节点表示叶;如果 hasFocus 为真,则节点当前具有焦点。 tree 是为接收器配置的 JTree。返回渲染器用来绘制值的 Component

      TreeCellRenderer 还负责渲染表示树当前 DnD 放置位置的单元格(如果有的话)。如果此渲染器关心渲染 DnD 放置位置,它应该直接查询树以查看给定行是否表示放置位置:

         JTree.DropLocation dropLocation = tree.getDropLocation();
         if (dropLocation != null
             && dropLocation.getChildIndex() == -1
             && tree.getRowForPath(dropLocation.getPath()) == row) {
      
           // this row represents the current drop location
           // so render it specially, perhaps with a different color
         }
       
      参数:
      tree - 接收器正在配置
      value - 要呈现的值
      selected - 节点是否被选中
      expanded - 节点是否展开
      leaf - 节点是否是领导节点
      row - 行索引
      hasFocus - 节点是否有焦点
      返回:
      渲染器用来绘制值的 Component