Как уже указывал Родди из замороженного горошка , последнее, что вы должны сделать, - это сделать диалоговое окно видимым.
Проблема в том, что эти две строки:
this.setModal(true);
this.setVisible(true);
Если диалоговое окно является модальным, то setVisible
будет блокироваться до тех пор, пока диалоговое окно больше не будет видимым или расположенным.
Это означает, что все после setVisible
выполняется после того, как пользователь нажимает на красныйX, чтобы закрыть окно.Но в этот момент диалоговое окно больше не отображается, и вы больше его не отображаете.