我有一个问题,这里也有描述。
我在课堂上有这样的invertExpand
方法:MyTree
public void invertExpand(DefaultMutableTreeNode node) {
TreePath path = new TreePath(node.getPath()); // no better way to get TreePath from TreeNode :(
if (!isExpanded(path)) {
expandPath(path);
} else {
collapsePath(path);
}
}
但问题是isExpanded()
方法使用HashMap
来存储扩展路径。似乎isExpanded()
永远不会返回true
新创建的TreePath
. (但它们确实被扩展了)
有什么办法可以解决这个问题吗?