如何编写树模型监听器

原文: https://docs.oracle.com/javase/tutorial/uiswing/events/treemodellistener.html

通过实现树模型监听器,您可以检测显示的数据何时发生更改。您可以使用树模型监听器来检测用户何时编辑树节点。所有通知都描述了相对于树中节点的更改。有关详细信息,请阅读动态更改树

TreeModelListener没有适配器类。

方法 目的
treeNodesChanged(TreeModelEvent) 当一个或多个兄弟节点以某种方式发生变化时调用。
treeNodesInserted(TreeModelEvent) 在将节点插入树中后调用。
treeNodesRemoved(TreeModelEvent) 从树中删除节点后调用。
treeStructureChanged(TreeModelEvent) 在树的结构从当前节点向下彻底改变之后调用。此事件适用于连接到此节点的所有节点。
方法 目的
对象 getSource()

java.util.EventObject中的*)_ | 返回触发事件的对象。 | | int [] getChildIndices() | 对于treeNodesChangedtreeNodesInsertedtreeNodesRemoved,分别返回已更改,已插入或已删除节点的索引。返回对treeStructureChanged没有用的东西。 | | Object [] getChildren() | 返回与子索引对应的对象。 | | Object [] getPath() | 返回已更改,已插入或已删除节点的父节点的路径。对于treeStructureChanged,返回结构已更改的节点的路径。 | | TreePath getTreePath() | 返回与getPath相同的内容,但返回 TreePath 对象。 |

下表列出了使用树扩展监听器的示例。

在哪里描述 笔记
DynamicTreeDemo 如何使用树木 DynamicTree类实现树模型监听器,以检测用户何时编辑了节点的数据。