java中的ModalDialog阻塞

时间:2013-02-20 10:08:23

标签: java swing modal-dialog jdialog

我有一个正在运行的长任务,我正在弹出一个带有MainUI.modalDialog.setVisible(true);的模式对话框,它有一个ProgressBar。但是我确实观察到它阻止了这个过程。如何在不阻止框架中运行的任何内容的情况下弹出Dialog?

3 个答案:

答案 0 :(得分:1)

这是模态对话框的行为。选项是您要么不将其显示为模态,要么将其显示在单独的线程中。

答案 1 :(得分:0)

如果它不是GUI代码,你应该在你的框架中运行的任何东西进入另一个线程。您还可以在单​​独的GUI线程中运行模式对话框。

答案 2 :(得分:0)

http://en.wikipedia.org/wiki/Modal_window

“在用户界面设计中,模式窗口是一个子窗口,要求用户在返回之前与其进行交互以运行父应用程序从而阻止工作流程在应用程序主窗口上。模态窗口通常称为重窗口或模态对话框,因为窗口通常用于显示对话框。“

解决方案:请勿使用模态窗口。