【发布时间】:2012-09-06 03:49:48
【问题描述】:
我有一个 JFrame,我将它用作主要的 JFrame,并在同一个 JFrame 中更改 JPanel。第一个 JPanel 已经在 JFrame 内,所以我可以用“this.removeall() then ,this.setContentPane(new JPanel2)”替换它,因为“this”在这里调用 JFrame 本身。
在另一个 JPanel 中,我想制作一个 JButton 来用另一个 JPanel 替换当前的 JPanel。问题是我之前不能执行相同的代码,因为这里的“this”调用的是 JPanel 而不是 JFrame。
问题是如何在 JPanel 中编写代码让我让 JFrame 更改其“setContentPane”以查看第二个面板?
我在使用 CardLayout 的过程中找到了答案。这个视频帮我解决了问题
【问题讨论】:
-
为什么不对这组面板使用
CardLayout? -
@AndrewThompson-在界面设计中我们使用了按钮而不是 CardLayout 或 Tabs。想把所有的应用面板都做成JFrame一个一个的改
-
我想在 JPanel 本身而不是 JFrame 中的按钮内编写更改 JPanel 的代码 - @AndrewThompson
-
“在 JPanel 的按钮内”是什么意思 - 代码不应扩展按钮或面板。
-
我的意思是,这将是按钮的功能。
标签: java swing netbeans jframe jpanel