本教程适用于JDK 8。本页面中描述的示例和实践不利用后续版本中引入的改进,可能使用不再可用的技术。
请参阅Java语言更改了解Java SE 9及其后续版本中更新的语言功能的概述。
请参阅JDK发布说明了解所有JDK版本的新功能、增强功能以及已删除或弃用选项的信息。
通过实现树模型监听器,您可以检测树显示的数据何时发生更改。您可以使用树模型监听器来检测用户编辑树节点的情况。所有通知都描述了与树中的一个节点相关的更改。有关详细信息,请阅读动态更改树。
TreeModelListener
没有适配器类。
方法 | 目的 |
---|---|
treeNodesChanged(TreeModelEvent) | 当一个或多个兄弟节点以某种方式发生更改时调用。 |
treeNodesInserted(TreeModelEvent) | 在将节点插入树之后调用。 |
treeNodesRemoved(TreeModelEvent) | 在将节点从树中移除之后调用。 |
treeStructureChanged(TreeModelEvent) | 在树的结构从当前节点开始发生了重大更改之后调用。此事件适用于与此节点连接的所有节点。 |
方法 | 目的 |
---|---|
Object getSource() (在 java.util.EventObject 中) |
返回触发事件的对象。 |
int[] getChildIndices() | 对于 treeNodesChanged 、treeNodesInserted 和 treeNodesRemoved ,返回更改、插入或删除的节点的索引。对于 treeStructureChanged 没有返回任何有用的信息。 |
Object[] getChildren() | 返回与子索引对应的对象。 |
Object[] getPath() | 返回更改、插入或删除节点的父节点路径。对于 treeStructureChanged ,返回结构更改的节点下方的路径。 |
TreePath getTreePath() | 返回与 getPath 相同的内容,但作为 TreePath 对象。 |
以下表格列出了使用树扩展监听器的示例。
示例 | 描述位置 | 备注 |
---|---|---|
DynamicTreeDemo |
如何使用树 | DynamicTree 类实现了树模型监听器,用于检测用户是否编辑了节点的数据。 |