-
- 所有已知实现类:
-
DefaultTreeModel
public interface TreeModel该模型使用JTree。JTree及其相关类广泛使用的TreePathS表示在确定节点TreeModel。 如果TreeModel返回相同的对象(与equals相比),则在相同父级下的两个不同索引处,将生成的TreePath对象也将被视为相等。 一些实现可以假设如果两个TreePath相等,则它们标识相同的节点。 如果不满足这个条件,可能会导致绘画问题和其他奇怪之处。 换句话说,如果给定父级的getChild返回相同的对象(由equals确定)可能会导致问题,建议您避免这样做。类似地,
JTree及其相关类将TreePaths放在Map。 因此,如果请求两次节点,则返回值必须相等(使用equals方法)并具有相同的hashCode。有关树模型的更多信息,包括自定义实现的示例,请参阅The Java Tutorial中的 How to Use Trees 。
- 另请参见:
-
TreePath
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 voidaddTreeModelListener(TreeModelListener l)为树更改后发布的TreeModelEvent添加一个侦听器。ObjectgetChild(Object parent, int index)返回的孩子parent索引index父项的子阵列英寸intgetChildCount(Object parent)返回子项数parent。intgetIndexOfChild(Object parent, Object child)返回父级中的子索引。ObjectgetRoot()返回树的根。booleanisLeaf(Object node)如果node是叶子,则返回true。voidremoveTreeModelListener(TreeModelListener l)删除以前使用addTreeModelListener添加的侦听addTreeModelListener。voidvalueForPathChanged(TreePath path, Object newValue)当用户将newValue标识的项目的值更改为path发送newValue。
-
-
-
方法详细信息
-
getRoot
Object getRoot()
返回树的根。 仅当树没有节点时才返回null。- 结果
- 树的根
-
getChild
Object getChild(Object parent, int index)
返回的孩子parent索引index父项的子阵列英寸parent必须是先前从此数据源获取的节点。 如果index是parent(即index >= 0 && index < getChildCount(parent)的有效索引,则不应返回null。- 参数
-
parent- 树中的节点,从此数据源获取 -
index- 要退回的孩子的索引 - 结果
-
parent的孩子,索引号index
-
getChildCount
int getChildCount(Object parent)
返回子项数parent。 如果节点是叶子或者没有子节点,则返回0。parent必须是先前从此数据源获取的节点。- 参数
-
parent- 树中的节点,从此数据源获取 - 结果
-
节点
parent的子节parent
-
isLeaf
boolean isLeaf(Object node)
如果node是一个叶子,则返回true。 即使node没有子false,此方法也可能返回false。 例如,文件系统中的目录可能不包含任何文件; 表示目录的节点不是叶子,但它也没有子节点。- 参数
-
node- 树中的节点,从此数据源获取 - 结果
-
如果
node是叶子,nodetrue
-
valueForPathChanged
void valueForPathChanged(TreePath path, Object newValue)
当用户将newValue标识的项目的值更改为path发送newValue。 如果newValue表示真正的新值,则模型应发布treeNodesChanged事件。- 参数
-
path- 用户已更改的节点的路径 -
newValue- TreeCellEditor的新值
-
getIndexOfChild
int getIndexOfChild(Object parent, Object child)
返回父级中的子索引。 如果parent或child是null,则返回-1。 如果parent或child不属于此树模型,则返回-1。- 参数
-
parent- 树中的节点,从此数据源获取 -
child- 我们感兴趣的节点 - 结果
-
父项
child的索引,如果child或parent是null-1,或者不属于此树模型
-
addTreeModelListener
void addTreeModelListener(TreeModelListener l)
为树更改后发布的TreeModelEvent添加侦听器。- 参数
-
l- 要添加的侦听器 - 另请参见:
-
removeTreeModelListener(javax.swing.event.TreeModelListener)
-
removeTreeModelListener
void removeTreeModelListener(TreeModelListener l)
删除以前使用addTreeModelListener添加的侦听addTreeModelListener。- 参数
-
l- 要删除的侦听器 - 另请参见:
-
addTreeModelListener(javax.swing.event.TreeModelListener)
-
-