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

标签 java swing user-interface jdialog cardlayout

我的程序由 3 个主要“部分”组成。主要功能,登录表单和应用程序表单。主要功能应该做这样的事情:打开登录表单,等待它关闭,然后打开应用程序表单。我无法让等待部分工作,或者更确切地说,我不知道我将如何去做。

有人告诉我改用 JDialog 并使用 setModal(true),但使用这种方法登录表单不会出现在任务栏上,我认为这很糟糕。

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

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

最佳答案

  • 为什么登录必须出现在任务栏上,因为主应用程序将在那里,而且您不希望单个程序有多个任务栏项目。您最好的选择可能是使用模态 JDialog。
  • 另一种选择是使用 CardLayout交换“观点”。
  • 第三种选择是在必须时使用 JFrame,但附加一个监听器,我认为是 WindowListener,以响应其关闭事件。
  • 无论您走哪条路线,您的登录 gui 都应该是一个 JPanel,这样您就可以将它放在任何您想要的地方,然后再改变主意。

关于java - 如何在继续之前等待 JFrame 关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12335733/

相关文章:

java - 在 Excel 工作表中使用 JAVA 永久删除空行 Apache POI

java - 检查整数是否在 jsonb 列表中

java - java中多个点之间的连续虚线(swing)

javascript - React Native 模态选择器中的全屏

java - 编译器错误 : reference to call ambiguous

Java - 使用嵌套 for 循环创建带有数字的三角形

java - JTextFields 没有显示,但它们仍然存在。 (第一个是 "bugily"可见)

java - 覆盖 JTable 的 DefaultTableCellRenderer 以将 JTable 中的所有单元格居中

java - Swing 中的可选面板

c++ - 如何配置 QTreeView 在使用箭头键移动时保留多项选择