Как приостановить выполнение, пока открыт JDialog - PullRequest
6 голосов
/ 29 мая 2009

Как сделать так, чтобы мое приложение приостанавливалось при открытии собственного JDialog и после закрытия диалогового окна, чтобы продолжить снова.

Ответы [ 2 ]

17 голосов
/ 29 мая 2009

Просто используйте:

setModal(true);

Я обычно называю это из конструктора JDialog.

См. Javadocs на setModal(boolean).
http://java.sun.com/javase/6/docs/api/java/awt/Dialog.html#setModal(boolean)

Это приведет к блокировке выполнения в текущем потоке до закрытия диалогового окна.

В качестве альтернативы вы можете использовать:

setModalityType(Dialog.DEFAULT_MODALITY_TYPE);

Это эквивалентно setModal(true) и технически правильный способ сделать это.

1 голос
/ 29 мая 2009

См. Конструктор JDialog http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JDialog.html#JDialog(java.awt.Dialog,%20java.lang.String,%20boolean). Вы можете установить модальность этого диалога. Установка modal = true приостановит ваше приложение. Вы также можете использовать метод 'setModal' http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Dialog.html#setModal(boolean)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...