我正在开发一个包含许多 JFrame 的应用程序,结果我的程序多次出现在任务栏中,每个当前可见的 JFrame 一个。我知道 JInternalFrame 可能会解决我的问题,但我已经制作了很多 JFrame,很难切换!是否可以让我已经制作的 JFrame 出现在总体 JFrame 中?也许以某种方式将每个 JFrame “转移”到 JInternalFrame 中?
我最终希望我的应用程序看起来类似于 Android 应用程序,具有几个可以像浏览器一样导航的“活动”。
谢谢
我正在开发一个包含许多 JFrame 的应用程序,结果我的程序多次出现在任务栏中,每个当前可见的 JFrame 一个。我知道 JInternalFrame 可能会解决我的问题,但我已经制作了很多 JFrame,很难切换!是否可以让我已经制作的 JFrame 出现在总体 JFrame 中?也许以某种方式将每个 JFrame “转移”到 JInternalFrame 中?
我最终希望我的应用程序看起来类似于 Android 应用程序,具有几个可以像浏览器一样导航的“活动”。
谢谢
是的,您总是可以从 JFrame 获取 contentPane 并将其放入 JInternalFrame 的 contentPane 中(通过预期的 get 和 set 方法),但是尝试将好的代码添加到糟糕的设计中往往不是一个好主意。您最好重构您的代码并尝试针对 JPanel 而不是 JFrame 编写代码。这样,您就可以灵活地将 JPanel 放置在您希望的任何位置,无论是 JInternalFrames、JDialogs、JTabbedPane 组件,还是通过 CardLayout 交换。