2011-12-16 1 views
0

Я пытаюсь создать небольшое всплывающее меню, которое отображает серию флажков пользователю на Java. После выбора пользователь нажимает кнопку, и выбор должен быть передан моей основной программе.Создать checkbox-frame и подождать выбора

В настоящее время у меня есть класс SelectionFrame, который расширяет JFrame. Что было бы лучшим способом сделать следующие вещи

  • Пусть основной программы ждать, пока кнопка в SelectionFrame не будет нажата
  • На этом этапе сделать SelectionFrame отправить выделение в основной программе

Я попытался сделать это с помощью настроек boolean в SelectionFrame, который поворачивается при нажатии кнопки. Я разрешаю основной программе ждать, пока значение этого логического значения не будет истинным, а затем извлечет выделение из SelectionFrame. По какой-то причине это не работает.

Спасибо за совет!

+0

Я четко заявил в своем вопросе две вещи, о которых я хотел бы получить совет. 1) Как заставить основную программу ждать нажатия кнопки в кадре и 2) как заставить кадр отправить значение в основную программу – Freek8

+0

Я не прошу вас исправить мой код, я прошу совет. – Freek8

+0

Пожалуйста, не отвечайте, если вы не собираетесь помогать. Если _Что было бы лучшим способом сделать следующие вещи_, вам не очень приятно (в том числе: _ Спасибо за совет! _), Тогда не беспокойтесь – Freek8

ответ

4

Чтобы создать окно, которое открывается и позволяет пользователю взаимодействовать только с этим окном, пока оно не будет закрыто, вам понадобится модальное диалоговое окно, а не фрейм. В этом tutorial объясняется, как создавать диалоги. Вы можете просто установитьModal() в значение true. Это означало бы, что вызывающий метод будет ждать, пока диалог не будет закрыт.

+0

Спасибо, это именно то, что мне нужно! – Freek8

+0

Кроме того, посмотрите, как сделать поток до тех пор, пока не будет нажата кнопка диалога. – Supuhstar

Смежные вопросы