我有一个有几个屏幕的向导,用户必须填写他/她的详细信息以便进一步处理。在第二个屏幕上,我有一个带有三个单选按钮的收音机组,可以启用其他元素。要继续,用户必须选择其中之一。当用户选择第三个按钮时,单选JTree
填入数据启用,用户必须从中选择一个选项。然后用户必须按“下一步”才能进入下一个屏幕。他选择的选项存储为TreePath
。到现在为止还挺好。如何让JTree扩展?
我的问题如下。如果用户想要从下面的屏幕回到JTree
的屏幕,我想为他提供\ JTree
扩展到已选择的选项,并突出显示该选项。然而,无论我为此尝试做什么(任何组合expandPath
,scrollPathToVisible
,addSelectionPath
,makeVisible
)都会为我提供折叠树。我尝试扩展叶子和节点。我的代码如下所示:
rbProcessJTree.setSelected(isProcessJTree());
if (null != getSelectedTablePath()){
trTables.addSelectionPath(getSelectedTablePath());
trTables.expandPath(getSelectedTablePath());
trTables.scrollPathToVisible(getSelectedTablePath());
}
当setSelected()
被调用时,状态变化监听器被调用,使JTree
。该模型在表单初始化期间被加载。
每次在屏幕之间切换时,我都会保存前一屏幕的输入数据并进行处理。然后,当我需要打开前一个屏幕时,我保存下列屏幕中的数据,将其处理,将数据加载到此屏幕并显示它。所以每次屏幕从头开始生成。
请问您能解释一下,在新创建的表单中,如何获得JTree
扩展的操作顺序?请提供数据模型并提供选择路径?
你好Dzmitry Zhaleznichenka,是你能得到的回答你的问题?我面临同样的问题,我已经在这里发布
请指教。 – ShamsR 2011-06-06 13:42:23