【发布时间】:2012-10-17 04:27:32
【问题描述】:
我有一个像这样的开源 java swing 应用程序: http://i47.tinypic.com/dff4f7.jpg
在截图中可以看到,有一个JPanel,分为左右两个区域。左侧区域有许多文本链接。当我点击SLA Criteria链接时,会弹出SLA Criteria窗口。弹出的窗口是JFrame对象。
现在,我正在尝试将弹出窗口放入 JPanel 的右侧区域,这意味着不再有弹出窗口,即当我单击 SLA 标准 链接时,它的内容将显示在 JPanel 的右侧区域。 JPanel 右侧区域的现有内容将不再使用。该概念与 java api 文档页面中的概念相同:http://docs.oracle.com/javase/6/docs/api。您点击左侧框架中的链接,您将获得在右侧框架中显示的内容。
示例图是这样的:
(注意:它是使用图像编辑器制作和编辑的,这不是工作应用程序的真实截图)
http://i48.tinypic.com/5vrxaa.jpg
那么,我想知道有没有办法将 JFrame 放入 JPanel 中?
我正在考虑使用 JInternalFrame,可以吗?还是有别的办法?
更新:
源码:
http://pastebin.com/tiqRbWP8(VTreePanel.java,这是左右分区的面板)
http://pastebin.com/330z3yuT(CPanel.java,这是VTreePanel的超类,也是JPanel的子类)
http://pastebin.com/MkNsbtjh(AWindow.java,这是弹出窗口)
http://pastebin.com/2rsppQeE(CFrame.java,这是AWindow的超类,也是JFrame的子类)
【问题讨论】:
-
"这个概念和java api文档页面中的一样:docs.oracle.com/javase/6/docs/api。你点击左边框架的链接,你会得到右边框架显示的内容。 " 查看File Browser GUI 以获取此类布局的示例。