2

我对这个问题感觉有点不好,因为我认为这可能不是 JDialog 应该使用的方式,但无论如何:

我有一个非常简单的 JDialog,它只包含一个标签,我想在应用程序正在运行一个仅在主摆动线程上运行几秒钟的任务的情况下显示它。该对话框必须是模型,以确保用户在执行短阻塞任务时不能单击主 GUI 上的任何内容。任务完成后,应该在没有任何用户交互的情况下处理模态对话框......这似乎不适用于模态对话框,因为一旦调用了 setVisible(true) 方法,执行似乎停止并且我可以' t弄清楚如何在没有用户交互的情况下从所有者方面关闭它......

我将非常感谢有关如何以不同方式实施此类阻止对话的帮助或建议。

4

1 回答 1

2

是的,如果您在 UI 线程上显示模式对话框,您的执行将停止。为了克服这个问题,您可以使用 SwingWorker 甚至只是创建一个新线程

于 2012-05-09T15:57:36.330 回答