在Netbeans的一个包中我创建了两个JFrame Forms,第一个是Login,第二个是mainProgram,在成功登录后,我使用以下方式“关闭”Login框架并打开主程序框架。 / p>
mainProgram m=new mainProgram();
m.setVisible(true);
setVisible(false); //to hide the log in frame
这是正确的方法吗?如果这两个分开的类被隐藏而不是被关闭,这不是错的吗?这是一个过程还是两个不同的过程?如果有更好的方式那么它是什么?
感谢..
答案 0 :(得分:3)
这是正确的方法吗?
是的,这应该没问题。
如果隐藏这两个分隔的类而不是,那不是错误的 被关闭了?
理想的是处理您未使用的表格(例如不再需要时的登录表格)
是这1个过程还是2个不同的过程?
这些将在同一个过程中运行
答案 1 :(得分:3)
在Netbeans的一个包中我创建了2个JFrame Forms,第一个是Login,第二个是mainProgram,在成功登录后,我使用以下方式“关闭”Login框架并打开主程序框架。 / p>
使用CardLayout,正确登录后,您可以将GUI切换到下一张卡和/或更改屏幕上的JFrame Dimmnsion,
答案 2 :(得分:1)
在我看来,更正确的方法是使用另一个类,如Launcher,它将具有入口点(main方法)。 将登录窗口设置为模态JDialog,并将DISPOSE_ON_CLOSE设置为default close operation的值。对话框类应包含一个通知用户真正登录的方法。登录对话框关闭后,显示主框架
loginDialog.setVisible(true);
if (loginDialog.isLoggedIn())
mainFrame.setVisible(true);
答案 3 :(得分:1)
试试这个......
您用来隐藏和取消隐藏的方法很好,但如果使用dispose 将更好
尝试在管理这些JFrame的类上应用 Singleton模式。
是的,他们都将在相同的流程。