【发布时间】:2011-07-12 13:47:28
【问题描述】:
我有一个 JTree 大约有 8 个以上的树节点(叶子)。要求是如果用户单击树节点,则选定的树节点将自动从任何位置滚动到滚动窗格的顶部。请帮忙!
【问题讨论】:
-
您想更改您的 JTree 顺序吗?还是只是强制您的 JTree 节点位于包含 JScrollPane 之上?
-
有
scrollPathToVisible和scrollRootToVisible,但它们不一定会滚动到滚动窗格的顶部。 -
不应更改树节点的顺序。假设底部的树节点是第 3 个树节点,当我单击打开它时,前 2 个树节点向上移动,单击的那个应该在滚动窗格的顶部。我尝试了所有其他方法,例如 scrollRectToVisible(rectBounds)、setRootVisible(boolean) 和 scrollPathToVisible(e.getPath()) 之类的方法。根据 Paulo 的说法,这些仅有助于滚动树节点的大小,而不是滚动到顶部。非常感谢这方面的任何帮助。
标签: java swing jscrollpane jtree