调用loginform类时,主类将被终止

时间:2012-10-27 06:51:03

标签: java swing

我想在swing中创建一个应用程序,通过提供登录表单来执行用户验证。 我的应用程序名称是application.java  我使用swing开发了一个Login表单(Loginform.java)。它运作成功。 当我使用我的application.java类访问它时它执行验证然后完成应用程序终止。 请给我一些建议,通过该建议进行验证,我的应用程序不会被终止。

2 个答案:

答案 0 :(得分:3)

我想如果您使用Loginform.java作为JFrame,请记住,在关闭login时,您会杀死所有程序。将Login表单实现为Dialog,所有表单都将按预期工作。

只需启动您的主框架application.java(使用大写设置类名),显示登录JDialog框并在成功设置主JFrame上可见。

JDialog示例:link

如何创建登录对话框see here

enter image description here

答案 1 :(得分:3)

这很可能是由于你的 LoginForm.java 中你调用了setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);,这会导致Event Dispatch ThreadInitial thread被杀死。

而是使用类似的东西:

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

另一方面,使用多个JFrame

并不是一种好习惯

您可以查看CardLayout,这样您就可以在JPanel JFrame之间翻转JDialog。或者使用JFrame作为登录屏幕,该屏幕将启动主{{1}}