【发布时间】:2017-05-06 20:29:42
【问题描述】:
我已经搜索并找不到答案我需要执行以下操作:我有两个 java 文件:一个 JFrame,一个 JPanel。我在 JFrame 中配置了一个按钮,以从主框架内打开 JPanel,新大小为 800,800。现在,我想关闭 JPanel 并返回到原始的 JFrame(最初大小为 500,500 的图像)。这看起来很简单,但我已经从 JPanel 中创建了一个主框架的实例,并将 jPanel 设置为 (this.setVisible(false))。我创建了一个新的 jFrame 对象并将其可见性设置为 true。发生的情况是,一个新的 JFrame 实例出现正常,但在 800,800 处没有图像的 JFrame 仍然出现。我尝试了getContentPane()、setContentPane() 的几种配置,甚至尝试将 JFrame 参数传递给 JPanel 的构造函数。我不确定我哪里出了问题,但任何帮助将不胜感激。我想要的只是显示原始大小和图像的原始 JFrame。提前谢谢你。
private void jButton_closeActionPerformed(java.awt.event.ActionEvent evt) {
this.setVisible(false);
mainMenuFrame = new MainMenuFrame();
mainMenuFrame.setVisible(true);
invalidate(); validate();
repaint();
}
【问题讨论】:
-
基本上,我的 JPanel 文件中有这个:
-
私人无效 jButton_closeActionPerformed(java.awt.event.ActionEvent evt) { this.setVisible(false); mainMenuFrame = new MainMenuFrame(); mainMenuFrame.setVisible(true);无效();证实();重绘(); }
-
编辑您的问题以添加代码。如果您从 jframe 打开和关闭 JPanel?会有这种可能吗?
-
我将尝试从框架内关闭。谢谢。
-
我做了一个你可以投票的答案。如果您有更多问题,请随时提问。另外,如果您在实施时遇到问题,请发布代码,以便我们更好地帮助您