用JTree怎么实现左边是树,右边是窗口?

xiaogz 2003-11-18 12:19:59
我现在有一个窗口,是application,不是WEB形式的,想要在左边是一棵树,右边是一个显示的窗口,当单击左边这个树上的一个叶子时,在右边刷新其内容,最好要有源代码。谢谢了,各位!
...全文
192 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
peter 2003-11-19
  • 打赏
  • 举报
回复
this.rootSplitPane.setLeftComponent(jTree1);
this.rootSplitPane.setRightComponent(jPanel1);

jTree1.addMouseListener(this);
}

public void mouseClicked(MouseEvent e)
{
if(e.getClickCount() == 2)
{
JComponent com= getInfosForSelectTreeNode();//得到选中的树节点中包含的组件的方法!(自己写)
if (com== null)
{
return;
}

jPanel1.add(com);
}
}
xiaogz 2003-11-19
  • 打赏
  • 举报
回复
兄弟,还有没有别的例子,我的问题是这样:
一个窗口,主体是JFrame,左边是leftPanel,右边是rightPanel,左边leftPanel上放一个JTree,右边rightPanel上放一个panel,如果单击左边树的叶子,我想在右边的panel上显示不同的panel,代码如下:
private JSplitPane rootSplitPane;
private JPanel rightPanel;
private JPanel leftPanel;
this.rootSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,leftPanel,rightPanel);
this.getContentPane().add(this.rootSplitPane, BorderLayout.CENTER);
下面的我不知道怎么写了,兄弟们帮忙。
peter 2003-11-19
  • 打赏
  • 举报
回复
主体是一个JFrame.
增加两个JInternalFrame.
左边是JTree, 右边显示.
JTree设为全局变量,右边显示帧可以得到JTree对象.

具体的看书巴! 也不清楚你要知道什么.下面有一个方法你看看!
SampleData 是我自己写的extends Object!
你可以写成你自己的对象.

private static String[] getDataForSelectTreeNode(JTree workflowTree)
{
DynamicTreeNode treeNode = null;
try
{
treeNode = (DynamicTreeNode)(workflowTree.getLastSelectedPathComponent());
}
catch(Exception ex)
{
return null;
}
if (treeNode == null)
{
return null;
}
SampleData sData = (SampleData)treeNode.getUserObject();
return sData.getData();
}
xiaogz 2003-11-19
  • 打赏
  • 举报
回复
各位兄弟,帮帮忙啊。
xiaogz 2003-11-18
  • 打赏
  • 举报
回复
哥们,你有例子吗,没有做过这方面的东西。谢谢了。
Yanbin_Q 2003-11-18
  • 打赏
  • 举报
回复
只要能互相能拿到引用就行,把左右都写成一个单例类,由ClassLoader加载时初始完这两个类。
xiaogz 2003-11-18
  • 打赏
  • 举报
回复
楼上的老兄,有没有例子啊,我现在可是急啊。帮帮忙啊。
原理我也懂,就是没有相应的例子,如果有例子,那就更明白了。
现在我左边的树和右边的panel都有,当我单击左边树的不同的叶子时,右边却不能显示相应的panel,大哥,郁闷中。
pxboy 2003-11-18
  • 打赏
  • 举报
回复
每个节点上保存panel的类名,用Class.forName加载,将所有panel都从一个抽象类派生,可以执行一些初始化与清除工作
xiaogz 2003-11-18
  • 打赏
  • 举报
回复
楼上的,valueChange中show的方法怎么写,粘一点代码上来。谢谢了。
yslfwww 2003-11-18
  • 打赏
  • 举报
回复
左边一个树,右边是个panel(cardlayout)
valueChange中show你的相应页面
lilitu 2003-11-18
  • 打赏
  • 举报
回复
jbuilder7.0中例子swing----treeControl

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧