从NetBeans中的JFrame中删除JPanel

时间:2010-05-24 03:25:16

标签: java swing netbeans jframe jpanel

我有几个JPanel,包含我想在主JFrame之间切换的按钮,标签等。目前,我正在尝试使用this.add(JPanelname);方法,this.remove(JPanelname);使用validate();repaint();方法

问题是它会将面板添加到JFrame,但不会将其删除。我不确定究竟是怎么回事。

2 个答案:

答案 0 :(得分:1)

也许您应该使用Card Layout

或许你应该使用模态JDialogs。因此,无论何时单击“widjet”,都会显示一个新窗口。然后,当您关闭对话框时,您将返回主框架。

答案 1 :(得分:0)

如果您经常在JPanel之间切换,那么JTabbedPane可能是正确的选择。添加或删除JPanel时,无需调用“validate”或“repaint”。你有安装布局管理器吗?您是否确保仅在UI事件线程中调用添加/删除?此外,通常一个不会调用“validate()”而是“invalidate()”来使容器无效以进行更新。