: У меня есть приложение JAVA, на время которого требуется некоторое время. Существует вызов закрыть порт, который занимает очень много времени. Я хочу добавить диалоговое окно, которое указывает пользователю, что приложение закрывается. Обычно я бы создал диалоговое окно, запустил поток, чтобы сделать длинную работу и закрыть диалог, а затем отобразить диалог. Как только работа будет завершена, диалог будет близок. Это не работает для выключения приложения, потому что кажется, что оконный прослушиватель закрывает все окна (вроде имеет смысл, он должен это делать). Я не уверен в этом.JAVA GUI Закрытие диалогового окна приложения
Код:
public void windowClosing(WindowEvent we)
{
shutDown();
}
public void shutdown()
{
final JDialog dialog = createDialog();
Thread t = new Thread
{
public void run()
{
saveProperties();
ClosePort();
dialog.setVisible(false);
System.exit(0);
}
};
t.start();
dialog.setVisible(true);
}
Так что происходит, что диалог никогда не появляется? – Mordechai
Возможный дубликат [* Как закрыть порт в случае завершения программы? *) (Http://stackoverflow.com/q/767292/230513) – trashgod
Диалог появляется, но он исчезает сразу же после того, как оконный прослушиватель завершает – user2899525