By implementing a tree model listener, you can detect when the data displayed by a tree changes. You can use a tree model listener to detect when the user edits tree nodes. All notifications describe changes relative to a node in the tree. For details, read Dynamically Changing a Tree.
The TreeModelListener Interface
TreeModelListener
has no adapter class.
Method | Purpose |
---|---|
treeNodesChanged(TreeModelEvent) | Called when one or more sibling nodes have changed in some way. |
treeNodesInserted(TreeModelEvent) | Called after nodes have been inserted into the tree. |
treeNodesRemoved(TreeModelEvent) | Called after nodes have been removed from the tree. |
treeStructureChanged(TreeModelEvent) | Called after the tree's structure has drastically changed from the current node on down. This event applies to all nodes connected to this node. |
Method | Purpose |
---|---|
Object getSource() (in java.util.EventObject ) |
Return the object that fired the event. |
int[] getChildIndices() | For treeNodesChanged , treeNodesInserted , and treeNodesRemoved , returns the indices of the changed, inserted, or deleted nodes, respectively. Returns nothing useful for treeStructureChanged . |
Object[] getChildren() | Returns the objects corresponding to the child indices. |
Object[] getPath() | Returns the path to the parent of the changed, inserted, or deleted nodes. For treeStructureChanged , returns the path to the node beneath which the structure has changed. |
TreePath getTreePath() | Returns the same thing as getPath , but as a
TreePath object. |
The following table lists the examples that use tree expansion listeners.
Example | Where Described | Notes |
---|---|---|
DynamicTreeDemo |
How to Use Trees | The DynamicTree class implements a tree model listener to detect when the user has edited a node's data. |