- java.lang.Object
-
- javax.swing.tree.TreePath
-
- All Implemented Interfaces:
Serializable
public class TreePath extends Object implements Serializable
TreePath
represents an array of objects that uniquely identify the path to a node in a tree. The elements of the array are ordered with the root as the first element of the array. For example, a file on the file system is uniquely identified based on the array of parent directories and the name of the file. The path/tmp/foo/bar
could be represented by aTreePath
asnew TreePath(new Object[] {"tmp", "foo", "bar"})
.TreePath
is used extensively byJTree
and related classes. For example,JTree
represents the selection as an array ofTreePath
s. When used withJTree
, the elements of the path are the objects returned from theTreeModel
. WhenJTree
is paired withDefaultTreeModel
, the elements of the path areTreeNode
s. The following example illustrates extracting the user object from the selection of aJTree
:DefaultMutableTreeNode root = ...; DefaultTreeModel model = new DefaultTreeModel(root); JTree tree = new JTree(model); ... TreePath selectedPath = tree.getSelectionPath(); DefaultMutableTreeNode selectedNode = ((DefaultMutableTreeNode)selectedPath.getLastPathComponent()). getUserObject();
Subclasses typically need override onlygetLastPathComponent
, andgetParentPath
. AsJTree
internally createsTreePath
s at various points, it's generally not useful to subclassTreePath
and use withJTree
.While
TreePath
is serializable, aNotSerializableException
is thrown if any elements of the path are not serializable.For further information and examples of using tree paths, see How to Use Trees in The Java Tutorial.
Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the
java.beans
package. Please seeXMLEncoder
.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
TreePath()
Creates an emptyTreePath
.TreePath(Object lastPathComponent)
Creates aTreePath
containing a single element.TreePath(Object[] path)
Creates aTreePath
from an array.protected
TreePath(Object[] path, int length)
Creates aTreePath
from an array.protected
TreePath(TreePath parent, Object lastPathComponent)
Creates aTreePath
with the specified parent and element.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
Compares thisTreePath
to the specified object.Object
getLastPathComponent()
Returns the last element of this path.TreePath
getParentPath()
Returns theTreePath
of the parent.Object[]
getPath()
Returns an ordered array of the elements of thisTreePath
.Object
getPathComponent(int index)
Returns the path element at the specified index.int
getPathCount()
Returns the number of elements in the path.int
hashCode()
Returns the hash code of thisTreePath
.boolean
isDescendant(TreePath aTreePath)
Returns true ifaTreePath
is a descendant of thisTreePath
.TreePath
pathByAddingChild(Object child)
Returns a new path containing all the elements of this path pluschild
.String
toString()
Returns a string that displays and identifies this object's properties.-
Methods declared in class java.lang.Object
-
-