将JFrame放在JFrame中

时间:2011-07-31 19:47:16

标签: java swing jframe jinternalframe

我正在开发一个包含许多JFrame的应用程序,其业余结果是我的程序多次出现在任务栏中,每个当前可见的JFrame都有一个。我知道JInternalFrame可能会解决我的问题,但我已经制作了很多JFrame,很难切换!是否可以让我已经制作的JFrame出现在一个总体的JFrame中?也许以某种方式将每个JFrame“转移”到JInternalFrame中?

我最终希望我的应用程序看起来像Android应用程序,有几个“活动”,您可以像浏览器一样导航。

由于

2 个答案:

答案 0 :(得分:2)

是的,您总是可以从JFrame获取contentPane并将其放入JInternalFrame的contentPane中(通过预期的get和set方法),但尝试将好的代码添加到错误中并不是一个好主意设计。您可能最好重构代码并尝试对JPanel而不是JFrame进行编码。通过这种方式,您可以灵活地将JPanel放置在任何地方,无论是JInternalFrames,JDialogs,JTabbedPane组件,还是通过CardLayout交换。

答案 1 :(得分:2)

替代方案,那么你只需要在JPanels之间切换

使用CardLayout示例here

使用Tabbed Paneshere