Примечание. Если вы не уверены, что такое диалоговое окно, прочитайте « Что такое диалоговое окно»?
Окно сообщений — это простое всплывающее окно, которое отображает сообщение для пользователя и закрывается нажатием кнопки. Чтобы избежать создания собственного диалогового окна с нуля, класс JOptionPane предоставляет методы для создания различных диалоговых окон, просто передавая им некоторые параметры, чтобы определить внешний вид диалогового окна.
Примечание. Если вы хотите получить конкретный ввод от пользователя, взгляните на диалоговое окно «Построение ввода» . Он по-прежнему использует метод из класса JOptionPane, но его стоит отличить от простого окна сообщения, поскольку параметры, которые пользователь может выбрать, более разнообразны.
Класс JOptionPane
Для работы с JOptionPane
классом нет необходимости создавать экземпляр a, JOptionPane
потому что методы и поля, которые вам нужно использовать, это статические методы и статические поля .
Для создания простого диалогового окна сообщения у вас есть выбор из трех JOptionPane
методов:
showMessageDialog
— Этот метод является самым основным. Он позволяет вам установить сообщение, заголовок для диалогового окна, тип сообщения (например, предупреждающее сообщение, сообщение об ошибке) и имеет только кнопку ОК.showConfirmDialog
— Опять же, вы можете установить сообщение, заголовок, тип сообщения, но вы также можете выбрать одну из нескольких комбинаций кнопок (например, YES / NO, OK / CANCEL). Возвращает int, представляющий, какая кнопка была нажата.showOptionDialog
— Это самый гибкий метод. В дополнение к настройке сообщения и заголовка, у вас есть выбор, как настроить диалоговое окно. Вы можете выбрать тип сообщения и комбинацию кнопок или предоставить конкретную иконку иObject
массив для параметров кнопки.Object
Массив дает гибкость , чтобы сделать имена кнопок из массива строк или даже дать им все изображения с помощью массива Icon. Возвращает int, представляющий выбор кнопки пользователем.
Использование метода showMessageDialog
Для создания простого окна сообщения используйте showMessageDialog
:
JOptionPane.showMessageDialog(this, "This is the dialog title"
,"This is the dialog message", JOptionPane.PLAIN_MESSAGE);
Это создаст диалог без иконки — только сообщение, заголовок и кнопка ОК.
Это звучит как довольно простое окно сообщения, и это потому, что я передал статическое поле JOptionPane.PLAIN_MESSAGE
в качестве типа сообщения. Тип сообщения пытается придать диалоговому окну определенное ощущение, определив значок, который будет использоваться. A PLAIN_MESSAGE
не имеет иконки, но другие поля имеют:
ERROR_MESSAGE
INFORMATION_MESSAGE
WARNING_MESSAGE
QUESTION_MESSAGE
PLAIN_MESSAGE
Например, JOptionPane.ERROR_MESSAGE
использует красный восьмиугольник с восклицательным знаком в середине, чтобы попытаться создать ощущение, что произошло нечто неожиданное.
Посмотрите еще раз на первый параметр в приведенном выше примере. Я использую this
для ссылки на JFrame
объект в качестве родителя диалогового окна. Первым параметром любого из трех JOptionPane
методов всегда является родительский компонент (например JFrame
, JPanel
) диалогового окна. Это позволяет диалоговому окну определять его положение на экране относительно его родителя. Этот параметр может быть нулевым, если вы хотите создать диалоговое окно без контейнера, такого как JFrame
или JPanel
.
Последнее, что следует отметить в отношении JOptionPane.showMessageDialog
метода, — он не возвращает ответ пользователя. Для них есть только кнопка ОК. Поскольку их возможности настолько ограничены, не стоит пытаться получить ответ.
Прочтите больше в разделе Создание диалогового окна сообщения — часть II, чтобы увидеть, как используются другие методы JOptionPane.
Пример программы на Java-коде можно посмотреть в программе « Простые диалоговые окна сообщений» . Более подробный пример Java-приложения можно посмотреть в программе выбора опций JOptionPane .