Module java.desktop
Package javax.swing.tree

Class DefaultTreeCellRenderer

所有已实现的接口:
ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants, TreeCellRenderer

public class DefaultTreeCellRenderer extends JLabel implements TreeCellRenderer
在树中显示一个条目。 DefaultTreeCellRenderer 不是不透明的,除非你子类化了paint方法,否则不应更改此类。请参阅Java教程中的如何使用树,了解使用此类自定义节点显示的示例。

可以使用各种setter方法配置DefaultTreeCellRenderer使用的图标和颜色。每个属性的值都是从默认表中初始化的。当外观和感觉发生变化时(调用updateUI),任何具有UIResource类型值的属性都会从默认表中刷新。以下表列出了DefaultTreeCellRenderer属性与默认表键之间的映射:

属性
属性
"leafIcon" "Tree.leafIcon"
"closedIcon" "Tree.closedIcon"
"openIcon" "Tree.openIcon"
"textSelectionColor" "Tree.selectionForeground"
"textNonSelectionColor" "Tree.textForeground"
"backgroundSelectionColor" "Tree.selectionBackground"
"backgroundNonSelectionColor" "Tree.textBackground"
"borderSelectionColor" "Tree.selectionBorderColor"

实现说明: 此类仅重写invalidatevalidaterevalidaterepaintfirePropertyChange以提高性能。如果不重写这些经常调用的方法,将执行对于默认树单元格渲染器不必要的代码路径。如果编写自己的渲染器,请注意权衡重写这些方法的利弊。

警告: 此类的序列化对象将不兼容未来的Swing版本。当前的序列化支持适用于短期存储或在运行相同Swing版本的应用程序之间的RMI。从1.4开始,已将所有JavaBeans的长期存储支持添加到java.beans包中。请参阅XMLEncoder

  • Field Details

    • selected

      protected boolean selected
      当前是否选中值。
    • hasFocus

      protected boolean hasFocus
      是否具有焦点。
    • closedIcon

      protected transient Icon closedIcon
      用于显示未展开的非叶节点的图标。
    • leafIcon

      protected transient Icon leafIcon
      用于显示叶节点的图标。
    • openIcon

      protected transient Icon openIcon
      用于显示已展开的非叶节点的图标。
    • textSelectionColor

      protected Color textSelectionColor
      用于选中节点的前景色。
    • textNonSelectionColor

      protected Color textNonSelectionColor
      用于未选中节点的前景色。
    • backgroundSelectionColor

      protected Color backgroundSelectionColor
      选中节点时要使用的背景颜色。
    • backgroundNonSelectionColor

      protected Color backgroundNonSelectionColor
      未选中节点时要使用的背景颜色。
    • borderSelectionColor

      protected Color borderSelectionColor
      当节点具有焦点时要使用的焦点指示器颜色。
  • Constructor Details

    • DefaultTreeCellRenderer

      public DefaultTreeCellRenderer()
      创建一个DefaultTreeCellRenderer。图标和文本颜色取决于UIManager
  • Method Details