模块 java.desktop

类 AbstractLayoutCache

java.lang.Object
javax.swing.tree.AbstractLayoutCache
所有已实现的接口:
RowMapper
已知子类:
FixedHeightLayoutCache , VariableHeightLayoutCache

public abstract class AbstractLayoutCache extends Object implements RowMapper
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder
  • 字段详细信息

    • nodeDimensions

      protected AbstractLayoutCache.NodeDimensions  nodeDimensions
      负责获取节点大小的对象。
    • treeModel

      protected TreeModel  treeModel
      模型提供信息。
    • treeSelectionModel

      protected TreeSelectionModel  treeSelectionModel
      选型。
    • rootVisible

      protected boolean rootVisible
      如果显示根节点,则为 True;如果其子节点是可见的最高节点,则为 false。
    • rowHeight

      protected int rowHeight
      每行使用的高度。如果这是 <= 0,渲染器将用于确定每行的高度。
  • 构造方法详细信息

    • AbstractLayoutCache

      protected AbstractLayoutCache()
      子类调用的构造方法。
  • 方法详情

    • setNodeDimensions

      public void setNodeDimensions(AbstractLayoutCache.NodeDimensions  nd)
      设置负责在树中绘制节点的渲染器,因此负责计算各个节点的尺寸。
      参数:
      nd - 一个 NodeDimensions 对象
    • getNodeDimensions

      public AbstractLayoutCache.NodeDimensions  getNodeDimensions()
      返回呈现树中节点的对象,该对象负责计算各个节点的维度。
      返回:
      NodeDimensions 对象
    • setModel

      public void setModel(TreeModel  newModel)
      设置将提供数据的TreeModel
      参数:
      newModel - TreeModel 即提供数据
    • getModel

      public TreeModel  getModel()
      返回提供数据的 TreeModel
      返回:
      提供数据的TreeModel
    • setRootVisible

      @BeanProperty (description ="Whether or not the root node from the TreeModel is visible.") public void setRootVisible(boolean rootVisible)
      确定 TreeModel 的根节点是否可见。
      参数:
      rootVisible - 如果要显示树的根节点则为真
      参见:
    • isRootVisible

      public boolean isRootVisible()
      如果显示树的根节点,则返回 true。
      返回:
      如果显示树的根节点,则为真
      参见:
    • setRowHeight

      @BeanProperty (description ="The height of each cell.") public void setRowHeight(int rowHeight)
      设置每个单元格的高度。如果指定值小于或等于零,则查询当前单元格渲染器以获取每一行的高度。
      参数:
      rowHeight - 每个单元格的高度,以像素为单位
    • getRowHeight

      public int getRowHeight()
      返回每行的高度。如果返回值小于或等于 0,则每行的高度由渲染器确定。
      返回:
      每行的高度
    • setSelectionModel

      public void setSelectionModel(TreeSelectionModel  newLSM)
      将用于管理选择的 TreeSelectionModel 设置为新的 LSM。
      参数:
      newLSM - 新的 TreeSelectionModel
    • getSelectionModel

      public TreeSelectionModel  getSelectionModel()
      返回用于维护选择的模型。
      返回:
      treeSelectionModel
    • getPreferredHeight

      public int getPreferredHeight()
      返回首选高度。
      返回:
      首选高度
    • getPreferredWidth

      public int getPreferredWidth(Rectangle  bounds)
      返回传入区域的首选宽度。该区域由最接近 (bounds.x, bounds.y) 并结束于 bounds.height + bounds.y 的路径定义。如果 boundsnull ,将返回所有节点的首选宽度(这可能是一个非常昂贵的计算)。
      参数:
      bounds - 被查询的区域
      返回:
      传入区域的首选宽度
    • isExpanded

      public abstract boolean isExpanded(TreePath  path)
      如果 row 标识的值当前已展开,则返回 true。
      参数:
      path - 要检查的 TreePath
      返回:
      TreePath 是否展开
    • getBounds

      public abstract Rectangle  getBounds(TreePath  path, Rectangle  placeIn)
      返回一个矩形,给出绘制路径所需的边界。
      参数:
      path - 一个 TreePath 指定一个节点
      placeIn - 提供可用空间的 Rectangle 对象
      返回:
      一个 Rectangle 对象,指定要使用的空间
    • getPathForRow

      public abstract TreePath  getPathForRow(int row)
      返回传入行的路径。如果行不可见,则返回 null
      参数:
      row - 被查询的行
      返回:
      给定行的 TreePath
    • getRowForPath

      public abstract int getRowForPath(TreePath  path)
      返回路径中标识的最后一项可见的行。如果路径中的任何元素当前不可见,将返回 -1。
      参数:
      path - 被查询的 TreePath
      返回:
      路径中最后一项可见的行,如果路径中的任何元素当前不可见,则为 -1
    • getPathClosestTo

      public abstract TreePath  getPathClosestTo(int x, int y)
      返回最接近 x,y 的节点的路径。如果当前没有可见的内容,这将返回 null ,否则它将始终返回有效路径。如果您需要测试返回的对象是否恰好位于 x, y 处,您应该获取返回路径的边界并针对该路径测试 x, y。
      参数:
      x - 所需位置的水平组件
      y - 所需位置的垂直组件
      返回:
      最接近指定点的TreePath
    • getVisiblePathsFrom

      public abstract Enumeration <TreePath > getVisiblePathsFrom(TreePath  path)
      返回一个 Enumerator,它在从传入位置开始的可见路径上递增。枚举的顺序基于路径的显示方式。返回的枚举的第一个元素将是路径,除非它不可见,在这种情况下将返回 null
      参数:
      path - 枚举的起始位置
      返回:
      Enumerator 从所需位置开始
    • getVisibleChildCount

      public abstract int getVisibleChildCount(TreePath  path)
      返回行的可见子项数。
      参数:
      path - 被查询的路径
      返回:
      指定路径的可见子项数
    • setExpandedState

      public abstract void setExpandedState(TreePath  path, boolean isExpanded)
      将路径 path 扩展状态标记为 isExpanded
      参数:
      path - 展开或折叠的路径
      isExpanded - 如果应该扩展路径则为 true,否则为 false
    • getExpandedState

      public abstract boolean getExpandedState(TreePath  path)
      如果路径已展开且可见,则返回 true。
      参数:
      path - 被查询的路径
      返回:
      如果路径已展开且可见,则为 true,否则为 false
    • getRowCount

      public abstract int getRowCount()
      显示的行数。
      返回:
      显示的行数
    • invalidateSizes

      public abstract void invalidateSizes()
      通知 TreeState 它需要重新计算它引用的所有大小。
    • invalidatePathBounds

      public abstract void invalidatePathBounds(TreePath  path)
      指示 LayoutCache path 的边界无效,需要更新。
      参数:
      path - 正在更新的路径
    • treeNodesChanged

      public abstract void treeNodesChanged(TreeModelEvent  e)

      在节点(或一组兄弟节点)以某种方式发生更改后调用。节点没有更改树中的位置或更改其子数组,但其他属性已更改并可能影响显示。示例:文件名已更改,但它位于文件系统中的同一位置。

      e.path() 返回更改节点的父节点的路径。

      e.childIndices() 返回已更改节点的索引。

      参数:
      e - TreeModelEvent
    • treeNodesInserted

      public abstract void treeNodesInserted(TreeModelEvent  e)

      在节点被插入到树中后调用。

      e.path() 返回新节点的父节点

      e.childIndices() 按升序返回新节点的索引。

      参数:
      e - TreeModelEvent
    • treeNodesRemoved

      public abstract void treeNodesRemoved(TreeModelEvent  e)

      在从树中删除节点后调用。请注意,如果从树中移除子树,则只能为移除的子树的根调用此方法一次,而不是为移除的每个单独的兄弟姐妹集调用一次。

      e.path() 返回已删除节点的前父节点。

      e.childIndices() 返回节点在按升序删除之前的索引。

      参数:
      e - TreeModelEvent
    • treeStructureChanged

      public abstract void treeStructureChanged(TreeModelEvent  e)

      在树从给定节点向下彻底改变结构后调用。如果 e.getPath() 返回的路径长度为 1,并且第一个元素未标识当前根节点,则第一个元素应成为树的新根。

      e.path() 保存到节点的路径。

      e.childIndices() 返回空值。

      参数:
      e - TreeModelEvent
    • getRowsForPaths

      public int[] getRowsForPaths(TreePath [] paths)
      返回显示 path 中的 TreePath 实例的行。此方法应返回与传入的长度相同的数组,如果 path 中的 TreePaths 之一无效,则应将其在数组中的条目设置为 -1。
      指定者:
      getRowsForPaths 在接口 RowMapper
      参数:
      paths - 被查询的 TreePath 数组
      返回:
      传入的相同长度的数组,其中包含每个行对应的每个TreePath显示的位置;如果 pathsnull ,则返回 null
    • getNodeDimensions

      protected Rectangle  getNodeDimensions(Object  value, int row, int depth, boolean expanded, Rectangle  placeIn)
      通过在 placeIn 中的引用返回表示 value 所需的大小。如果 inPlacenull ,则应返回新创建的 Rectangle ,否则应将值放入 inPlace 并返回。如果没有渲染器,这将返回 null
      参数:
      value - 要表示的 value
      row - 正在查询的行
      depth - 行的深度
      expanded - 如果行被扩展则为真,否则为假
      placeIn - 一个 Rectangle 包含表示 value 所需的大小
      返回:
      一个 Rectangle 包含节点维度,或者 null 如果节点没有维度
    • isFixedRowHeight

      protected boolean isFixedRowHeight()
      如果每行的高度是固定大小,则返回 true。
      返回:
      每行的高度是否为固定大小