2016-05-15 160 views
0

我目前有一个应用程序与单个窗口生成器和多个JFrames。当我从一个jframe移动到另一个时,我使用以下代码多个JFrame实例

contentPane.setVisible(false); 
EditAccountDetails editAccountDetails = new EditAccountDetails("admin"); 
editAccountDetails.setVisible(true); 

这创建了一个新的jframe,但是这并没有关闭旧的jframe。当我从我的WindowBuilder移动到一个JFrame,这并不发生,因为我可以关闭该窗口构建框架:

frame.dispose(); 
AdminDashboard adminDashboard = new AdminDashboard(); 
adminDashboard.setVisible(true); 

我不能关闭的JFrame以同样的方式,和IM假设我不应该有一个的WindowBuilder的多个实例。我如何解决这个问题?

enter image description here

+0

'#的JFrame ... dispose'虽然我建议使用'CardLayout'代替 – MadProgrammer

回答

2

我不能关闭的JFrame以同样的方式

为什么不呢? dispose是一种方法JFrame

和即时假设我不应该有一个windowbuilder的多个实例。

The Use of Multiple JFrames, Good/Bad Practice?可能会提供更多信息

如何解决这个问题?

我推荐使用CardLayout来代替,更多详细信息请参阅How to Use CardLayout

我也建议不使用窗口Builder或任何其他GUI编辑器为你有更好的理解API如何工作的,不过这只是我

+1

*“..建议不要使用Window Builder或任何其他GUI编辑器来更好地理解API的工作原理,但那只是我自己”*不可以。你并不孤单。 –