【发布时间】:2013-09-26 16:43:59
【问题描述】:
我在 NetBeans 中设计了两个 JFrame。
当我单击“规则”按钮(即放置在 JFrame1 上)时,它会打开第二个 JFrame(但 JFrame2 在 JFrame1 的窗口上打开,这就是我不想要的)。 在第二个 JFrame 中有一个“关闭”按钮。但是当我点击这个按钮时,我希望 JFrame1 被打开并且它也在工作,但是 JFrame2 实际上并没有关闭并且 JFrame1 出现在 JFrame2 上。
简而言之,主要形式是JFrame1。当我从 JFrame1 单击“规则”按钮时,它会在 JFrame1 上打开 JFrame2,在 JFrame2 中单击主窗体(即 JFrame1)时会出现一个“关闭”按钮,但它是通过 JFrame2 启动的。
场景是 JFframe1 -> JFrame2 -> JFrame1
现在我的问题是点击“规则”按钮后,JFrame1 应该关闭,JFrame2 显示在屏幕上,反之亦然。
【问题讨论】:
-
对要关闭的框架使用
dispose()方法。但不建议使用多个JFrames,而是查看多个对话框或内部框架。 -
您也不妨考虑The Use of Multiple JFrames, Good/Bad Practice?。使用框架进行表单切换本质上是非常糟糕的设计。我会考虑使用
JPanels 作为应用程序的主要容器,并使用JTabbedPanes 或CardLayout允许用户在它们之间切换 - 恕我直言...