- 所有已实现的接口:
Serializable
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
-
字段摘要
字段修饰符和类型Field描述protected int[]标识子级所在位置的索引。protected Object[]已被删除的子项。protected TreePath已更改节点的父节点的路径。在类 java.util.EventObject 中声明的字段
source -
构造方法总结
构造方法构造方法描述TreeModelEvent(Object source, Object[] path) 用于在节点结构以某种方式发生变化时创建事件,将修改后的子树的根路径标识为对象数组。TreeModelEvent(Object source, Object[] path, int[] childIndices, Object[] children) 用于在更改、插入或删除节点时创建事件,将修改项的父级路径标识为对象数组。TreeModelEvent(Object source, TreePath path) 用于在节点结构以某种方式发生变化时创建事件,将修改后的子树的根路径标识为 TreePath 对象。TreeModelEvent(Object source, TreePath path, int[] childIndices, Object[] children) 用于在更改、插入或删除节点时创建事件,将修改项的父项的路径标识为 TreePath 对象。 -
方法总结
在类 java.util.EventObject 中声明的方法
getSource
-
字段详细信息
-
path
已更改节点的父节点的路径。 -
childIndices
protected int[] childIndices标识子级所在位置的索引。 -
children
已被删除的子项。
-
-
构造方法详细信息
-
TreeModelEvent
用于在更改、插入或删除节点时创建事件,将修改项的父级路径标识为对象数组。所有被修改的对象都是兄弟姐妹,它们是指定父对象的直系后代(不是孙子)。发生插入、删除或更改的位置由int数组指定。该数组中的索引必须按从低到高的顺序排列。对于更改,模型中的索引与当前显示在 UI 中的项目的索引完全对应。因此,如果索引没有按照它们的确切顺序排列,这并不是真正重要的。但是多次插入或删除后,当前UI中的item不再对应于model中的item。因此,为插入和删除正确指定索引至关重要。
对于插入,索引代表final插入发生后树的状态。由于必须按顺序指定索引,因此最自然的处理方法是从最低索引开始并向最高索引努力。累积指定插入位置的
Integer对象的 Vector,然后将 Vector 转换为int的数组以创建事件。当 postition-index 为零时,节点被插入到列表的开头。当位置索引等于列表的大小时,节点将“插入”(附加到)列表的末尾。对于删除,索引代表最初的树的状态,在删除发生之前。由于必须按顺序指定索引,因此最自然的处理方法是使用删除计数器。首先将计数器初始化为零,然后从最低到最高开始处理列表。每次执行删除时,将删除计数器的当前值添加到发生删除的索引位置,然后使用
addElement()将结果附加到删除位置的 Vector 中。然后增加删除计数器。因此,存储在 Vector 中的索引位置反映了所有先前删除的效果,因此它们代表了每个对象在初始树中的位置。 (您也可以从最高索引开始,然后返回到最低索引,在使用insertElementAt(Integer, 0)时累积删除位置的向量。)无论您生成初始位置的向量,然后需要转换Integer的向量对象到int数组以创建事件。笔记:
- 与
DefaultTreeModel类中的insertNodeInto方法一样,当索引与向量的大小匹配时,insertElementAt附加到Vector。因此,即使向量为空,您也可以使用insertElementAt(Integer, 0)。 - 要为根节点创建节点更改事件,请将父索引和子索引指定为
null。
- 参数:
source- 负责生成事件的对象(通常事件对象的创建者将其值传递给this)path- 一个 Object 数组,标识到已修改项的父级的路径,其中数组的第一个元素是存储在根节点的 Object,最后一个元素是存储在父节点的 ObjectchildIndices- 一个int数组,指定已删除项目的索引值。索引必须按从低到高的顺序排序children- 包含插入、删除或更改对象的对象数组- 参见:
- 与
-
TreeModelEvent
用于在更改、插入或删除节点时创建事件,将修改项的父项的路径标识为 TreePath 对象。有关如何指定索引和对象的更多信息,请参阅TreeModelEvent(Object,Object[],int[],Object[])。- 参数:
source- 负责生成事件的对象(通常事件对象的创建者将其值传递给this)path- 一个 TreePath 对象,它标识到已修改项的父项的路径childIndices- 一个int数组,指定修改项的索引值children- 包含插入、删除或更改对象的对象数组- 参见:
-
TreeModelEvent
用于在节点结构以某种方式发生变化时创建事件,将修改后的子树的根路径标识为对象数组。例如,结构更改事件可能涉及节点交换位置,或者它可能在源自该节点的子树中封装多个插入和删除,其中更改可能发生在子树的不同级别。笔记:
JTree 折叠指定节点下的所有节点,以便只有它的直接子节点可见。- 参数:
source- 负责生成事件的对象(通常事件对象的创建者将其值传递给this)path- 一个对象数组,标识修改后的子树的根路径,其中数组的第一个元素是存储在根节点的对象,最后一个元素是存储在更改节点的对象- 参见:
-
TreeModelEvent
用于在节点结构以某种方式发生变化时创建事件,将修改后的子树的根路径标识为 TreePath 对象。有关此事件规范的更多信息,请参阅TreeModelEvent(Object,Object[])。- 参数:
source- 负责生成事件的对象(通常事件对象的创建者将其值传递给this)path- 标识更改路径的 TreePath 对象。在 DefaultTreeModel 中,此对象包含一个用户数据对象数组,但 TreePath 的子类可以使用一些完全不同的机制——例如,节点 ID 号- 参见:
-
-
方法详情
-
getTreePath
对于除 treeStructureChanged 之外的所有事件,返回已更改节点的父级。对于 treeStructureChanged 事件,返回已更改结构的祖先。这和getChildIndices用于获取受影响节点的列表。一个例外是用于标识根的 treeNodesChanged 事件,在这种情况下,这将返回根,
getChildIndices将返回 null。- 返回:
- 用于标识已更改节点的 TreePath。
- 参见:
-
getPath
从此事件包装的 TreePath 实例中获取对象数组的便捷方法。- 返回:
- 对象数组,其中第一个对象是存储在根中的对象,最后一个对象是存储在路径标识的节点中的对象
-
getChildren
在getChildIndices指定的位置返回由getPath标识的节点的子节点的对象。如果这是一个删除事件,则返回的对象不再是父节点的子节点。- 返回:
- 包含事件指定的子项的 Object 数组
- 参见:
-
getChildIndices
public int[] getChildIndices()返回子索引的值。如果这是删除事件,则索引指向初始列表中项目被删除的位置。如果是插入,则索引指向最终列表中添加项目的位置。对于节点更改,索引指向已修改节点的位置。- 返回:
-
包含事件指定的子项的索引位置的
int数组
-
toString
返回显示和标识此对象属性的字符串。- 重写:
toString在类EventObject中- 返回:
- 此对象的字符串表示形式
-