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()
(injava.util.EventObject
)Return the object that fired the event. int[] getChildIndices() For treeNodesChanged
,treeNodesInserted
, andtreeNodesRemoved
, returns the indices of the changed, inserted, or deleted nodes, respectively. Returns nothing useful fortreeStructureChanged
.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 aTreePath
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.