如何在继续之前等待JFrame关闭



我的程序由3个主要的"部分"组成。主功能,登录表单和应用程序表单。主功能应该做一些类似的事情:打开登录表单,等待它关闭,然后打开应用程序表格。我无法让等待的部分工作,或者更确切地说,我不知道我会怎么做。

有人告诉我用JDialog代替setModal(true),但用这种方法登录表单不会出现在任务栏上,这在我看来很糟糕。

我考虑的另一件事是在应用程序关闭后从登录中打开它,但这感觉很糟糕,因为这会使登录表单不可重复使用。

那么,请问你有什么建议?

  • 为什么登录必须出现在任务栏上,因为主应用程序会在那里,而且你不希望单个程序有多个任务栏项目。您的最佳选择可能是使用模态JDialog
  • 另一种选择是使用CardLayout交换"视图"
  • 第三种选择是使用JFrame,如果必须将侦听器附加到它,我相信它是WindowListener,以响应它的关闭事件
  • 不管你走哪条路,你的登录gui都应该是一个JPanel,这样你就可以把它放在你想要的任何地方,然后再改变主意

最新更新