Всплывающее окно в Java Swing

Может кто-нибудь предложить мне, как реализовать всплывающее окно в Java Swing. Я хочу, чтобы всплывающее окно было модальным (пользователь не может вернуться в главное окно, когда всплывающее окно открыто).

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

Ценю твою помощь.


person Gaurav Panwar    schedule 08.03.2010    source источник


Ответы (3)


Используйте JDialog. Нет ограничений на то, что вы можете добавить, вы можете добавить все, что хотите, в JDialog (точно так же, как при использовании JFrame)

person objects    schedule 08.03.2010
comment
Объекты благодарности. Это было так просто сделать. - person Gaurav Panwar; 10.03.2010

  1. Разместите свои виджеты в JPanel.

  2. Используйте JOptionPane.showConfirmDialog с вашей панелью в качестве сообщения (например, с optionType JOptionPane.OK_CANCEL_OPTION).

  3. При необходимости считывайте пользовательский ввод из состояния вашей панели (например, вызов возвращает JOptionPane.OK_OPTION, а не JOptionPane.CANCEL_OPTION).

person Noel Ang    schedule 08.03.2010

Надеюсь, я нашел для вас нужную информацию

JDialog(Dialog owner, boolean modal)

для получения дополнительной информации перейдите по следующим ссылкам: http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/modality/

http://java.sun.com/docs/books/tutorial/uiswing/components/dialog.html

person Dimitri    schedule 08.03.2010
comment
Извиняюсь за то, что не упомянул версию JDK, которую я использую, — 1.5. - person Gaurav Panwar; 09.03.2010