Spec-Zone .ru
спецификации, руководства, описания, API
След: Создание GUI С JFC/Swing
Урок: Используя Компоненты Swing
Раздел: Как Использовать Различные Компоненты
Как Сделать Диалоговые окна
Домашняя страница > Создание GUI С JFC/Swing > Используя Компоненты Swing

Как Сделать Диалоговые окна

Диалоговое окно является независимым подокном, предназначенным, чтобы перенести временное уведомление кроме основного Окна приложения Swing. Большинство Диалоговых окон представляет сообщение об ошибке или предупреждение пользователю, но Диалоговые окна могут представить изображения, деревья каталогов, или примерно что-либо совместимое с основным Приложением Swing, которое управляет ими.

Для удобства несколько компонентных классов Swing могут непосредственно инстанцировать и вывести на экран диалоговые окна. Чтобы создать простые, стандартные диалоговые окна, Вы используете JOptionPane class. ProgressMonitor class может поднять диалоговое окно, которое показывает продвижение работы. Два других класса, JColorChooser и JFileChooser, также предоставьте стандартные диалоговые окна. Чтобы перевести диалоговое окно печати в рабочее состояние, можно использовать API Печати. Чтобы создать пользовательское диалоговое окно, используйте JDialog class непосредственно.

Код для простых диалоговых окон может быть минимальным. Например, вот информационное диалоговое окно:

Информационное диалоговое окно требует минимального кода

Вот код, который создает и показывает это:

JOptionPane.showMessageDialog(frame, "Eggs are not supposed to be green.");

Остальная часть этого раздела затрагивает следующие темы:

Краткий обзор Диалоговых окон

Каждое диалоговое окно зависит от компонента Фрейма. Когда тот Фрейм уничтожается, так его зависимые Диалоговые окна. Когда фрейм представляется в виде значка, его зависимые Диалоговые окна также исчезают из экрана. Когда фрейм является deiconified, его зависимые Диалоговые окна возвращаются к экрану. Колебание JDialog class наследовало это поведение от AWT Dialog class.

Диалоговое окно может быть модальным. Когда модальное Диалоговое окно видимо, оно блокирует ввод данных пользователем ко всем другим окнам в программе. JOptionPane создает JDialogs, которые модальны. Чтобы создать немодальное Диалоговое окно, следует использовать JDialog class непосредственно.

Запускаясь с JDK 6, можно изменить поведение модальности диалогового окна, используя новый API Модальности. См. Новый API Модальности для деталей.

JDialog class является подклассом AWT java.awt.Dialog class. Это добавляет корневой контейнер области и поддержку операции закрытия значения по умолчанию к Dialog объект. Они - те же самые функции это JFrame имеет, и использование JDialog непосредственно очень подобно использованию JFrame. Если Вы собираетесь использовать JDialog непосредственно, тогда следует понять материал в Использовании Высокоуровневых Контейнеров и Как Сделать Фреймы, особенно Отвечая на Закрывающие окно События.

Даже когда Вы используете JOptionPane чтобы реализовать диалоговое окно, Вы все еще используете a JDialog негласно. Причина - это JOptionPane просто контейнер, который может автоматически создать a JDialog и добавьте себя к JDialog's область контента.

Пример DialogDemo

Вот изображение приложения, которое выводит на экран диалоговые окна.

DialogDemo позволяет Вам переводить много видов в рабочее состояние диалоговых окон

Попробуйте это:: 
  1. Нажмите кнопку Launch, чтобы работать, Диалоговый Демонстрационный пример, используя Сеть Java™ Запускаются (загрузите JDK 6 или позже). Альтернативно, чтобы скомпилировать и выполнить пример самостоятельно, консультируйтесь, пример индексируют.Запускает пример DialogDemo

  2. Щелкните по Шоу это! кнопка.
    Появится модальное диалоговое окно. Пока Вы не закроете это, приложение будет безразлично, хотя это перекрасит себя в случае необходимости. Можно закрыть диалоговое окно или нажимая кнопку в диалоговом окне или явно, такой как при использовании художественных оформлений диалогового окна.
  3. В области More Dialogs щелкните по нижнему переключателю и затем Шоу это! кнопка.
    Появится немодальное диалоговое окно. Отметьте, что окно DialogDemo остается полностью функциональным, в то время как немодальное диалоговое окно произошло.
  4. В то время как немодальное диалоговое окно показывает, представьте окно DialogDemo в виде значка.
    Диалоговое окно не исчезнет из экрана до Вас deiconify окно DialogDemo.

Функции JOptionPane

Используя JOptionPane, можно быстро создать и настроить несколько различных видов диалоговых окон. JOptionPane оказывает поддержку для того, чтобы разметить стандартные диалоговые окна, обеспечивая значки, определяя диалоговый title и текст, и настраивая текст кнопки. Другие функции позволяют Вам настраивать компоненты диалоговые дисплеи и определять, где диалоговое окно должно казаться экранным. Можно даже определить что область опции, помещенная непосредственно во внутреннюю рамку (JInternalFrame) вместо a JDialog.

Когда Вы создаете a JOptionPane, стиль определенный код добавляет компоненты к JOptionPane и определяет расположение тех компонентов.

JOptionPane's поддержка значка позволяет Вам легко определять, какой значок диалоговое окно выводит на экран. Можно использовать пользовательский значок, никакой значок вообще, или любой из четырех стандартов JOptionPane значки (вопрос, информация, предупреждение, и ошибка). У каждого стили есть свои собственные версии четырех стандартных значков. Следующие данные показывают значки, используемые в Java (и Windows) стиль.

Значки используются JOptionPane
Описание значка Стиль Java Стиль Windows
вопрос Значок стили Java для диалоговых окон, которые задают вопросы Значок стили Windows для диалоговых окон, которые задают вопросы
информация Значок стили Java для информационных диалоговых окон Значок стили Windows для информационных диалоговых окон
предупреждение Значок стили Java для того, чтобы предупредить диалоговые окна Значок стили Windows для того, чтобы предупредить диалоговые окна
ошибка Значок стили Java для ошибочных диалоговых окон Значок стили Windows для ошибочных диалоговых окон

Создание и Показ Простых Диалоговых окон

Для самых простых модальных диалоговых окон Вы создаете и показываете диалоговое окно, используя один из JOptionPane's showXxxDialog методы. Если Ваше диалоговое окно должно быть внутренней рамкой, то добавьте Internal после show — например, showMessageDialog изменения к showInternalMessageDialog. Если Вы должны управлять закрывающим диалоговое окно поведением или если Вы не хотите, чтобы диалоговое окно было модально, то следует непосредственно инстанцировать JOptionPane и добавьте это к a JDialog экземпляр. Затем вызовите setVisible(true) на JDialog заставить это появиться.

Самые полезные два showXxxDialog методы showMessageDialog и showOptionDialog. showMessageDialog метод выводит на экран простое, диалоговое окно с одной кнопкой. showOptionDialog метод выводит на экран специализированное диалоговое окно — он может вывести на экран множество кнопок со специализированным текстом кнопки, и может содержать стандартное текстовое сообщение или набор компонентов.

Другие два showXxxDialog методы используются менее часто. showConfirmDialog метод просит, чтобы пользователь подтвердил что-то, но представляет текст стандартной кнопки (Да/Нет или локализованный эквивалент, например), а не текст кнопки, настроенный к пользовательской ситуации (Запустите/Отмените, например). Четвертый метод, showInputDialog, разрабатывается, чтобы вывести на экран модальное диалоговое окно, которое получает строку от пользователя, используя или текстовое поле, недоступное для редактирования поле комбинированного списка или список.

Вот некоторые примеры, взятые от DialogDemo.java, из использования showMessageDialog, showOptionDialog, и JOptionPane конструктор. Для большего количества примера кода см. DialogDemo.java и другие программы, перечисленные в Примерах то Использование Диалоговые окна.

showMessageDialog
Выводит на экран модальное диалоговое окно с одной кнопкой, которая маркируется "OK" (или локализованный эквивалент). Можно легко определить сообщение, значок, и title, который выводит на экран диалоговое окно. Вот некоторые примеры использования showMessageDialog:
Информационное диалоговое окно со значением по умолчанию title и значок
//default title and icon
JOptionPane.showMessageDialog(frame,
    "Eggs are not supposed to be green.");
Информационное диалоговое окно с пользовательским title, предупреждая значок
//custom title, warning icon
JOptionPane.showMessageDialog(frame,
    "Eggs are not supposed to be green.",
    "Inane warning",
    JOptionPane.WARNING_MESSAGE);
Информационное диалоговое окно с пользовательским title, ошибочным значком
//custom title, error icon
JOptionPane.showMessageDialog(frame,
    "Eggs are not supposed to be green.",
    "Inane error",
    JOptionPane.ERROR_MESSAGE);
Информационное диалоговое окно с пользовательским title, никаким значком
//custom title, no icon
JOptionPane.showMessageDialog(frame,
    "Eggs are not supposed to be green.",
    "A plain message",
    JOptionPane.PLAIN_MESSAGE);
Информационное диалоговое окно с пользовательским title, пользовательским значком
//custom title, custom icon
JOptionPane.showMessageDialog(frame,
    "Eggs are not supposed to be green.",
    "Inane custom dialog",
    JOptionPane.INFORMATION_MESSAGE,
    icon);
showOptionDialog
Выводит на экран модальное диалоговое окно с указанными кнопками, значками, сообщением, title, и так далее. С этим методом можно изменить текст, который появляется на кнопках стандартных диалоговых окон. Можно также выполнить много других видов настройки.
Yes/No/Cancel (в различных словах); showOptionDialog
//Custom button text
Object[] options = {"Yes, please",
                    "No, thanks",
                    "No eggs, no ham!"};
int n = JOptionPane.showOptionDialog(frame,
    "Would you like some green eggs to go "
    + "with that ham?",
    "A Silly Question",
    JOptionPane.YES_NO_CANCEL_OPTION,
    JOptionPane.QUESTION_MESSAGE,
    null,
    options,
    options[2]);
JOptionPane (конструктор)
Создает a JOptionPane с указанными кнопками, значками, сообщением, title, и так далее. Следует тогда добавить область опции к a JDialog, зарегистрируйте слушателя изменения свойства на области опции, и покажите диалоговое окно. См., что Останавливающееся Автоматическое Диалоговое окно Закрывается для деталей.
Явно используемый конструктор JOptionPane
final JOptionPane optionPane = new JOptionPane(
    "The only way to close this dialog is by\n"
    + "pressing one of the following buttons.\n"
    + "Do you understand?",
    JOptionPane.QUESTION_MESSAGE,
    JOptionPane.YES_NO_OPTION);

Параметры всему из showXxxDialog методы и JOptionPane конструкторы стандартизируются, хотя число параметров за каждый метод и конструктора изменяется. Следующий список описывает каждый параметр. Чтобы видеть точный список параметров за определенный метод, см. Диалоговый API.

Component parentComponent
Первый параметр каждому showXxxDialog метод всегда является родительским компонентом, который должен быть Фреймом, компонентом во Фрейме, или нулем. Если Вы определите Фрейм или Диалоговое окно, то Диалоговое окно будет появляться по центру Фрейма и следовать за поведением фокуса того Фрейма. Если Вы определите компонент во Фрейме, то Диалоговое окно появится по центру того компонента и будет следовать за поведением фокуса Фрейма того компонента. Если Вы определите нуль, то стиль выберет соответствующую позицию для диалогового окна — обычно, центр экрана — и Диалоговое окно будет не обязательно следовать за поведением фокуса любого видимого Фрейма или Диалогового окна.

JOptionPane конструкторы не включают этот параметр. Вместо этого Вы определяете родительский фрейм, когда Вы создаете JDialog это содержит JOptionPane, и Вы используете JDialog setLocationRelativeTo метод, чтобы установить диалоговую позицию.

Object message
Этот необходимый параметр определяет то, что диалоговое окно должно вывести на экран в его основной области. Обычно, Вы определяете строку, которая приводит к диалоговому окну, выводящему на экран метку с указанным текстом. Можно разделить сообщение более чем несколько строк, помещая новую строку (\n) символы в строке сообщения. Например:
"Complete the sentence:\n \"Green eggs and...\""
String title
title диалогового окна.
int optionType
Определяет набор кнопок, которые появляются у основания диалогового окна. Выберите из одного из следующих стандартных наборов: DEFAULT_OPTION, YES_NO_OPTION, YES_NO_CANCEL_OPTION, OK_CANCEL_OPTION.
int messageType
Этот параметр определяет значок, выведенный на экран в диалоговом окне. Выберите из одного из следующих значений: PLAIN_MESSAGE (никакой значок), ERROR_MESSAGE, INFORMATION_MESSAGE, WARNING_MESSAGE, QUESTION_MESSAGE.
Icon icon
Значок, чтобы вывести на экран в диалоговом окне.
Object[] options
Обычно используемый, чтобы определить строку, выведенную на экран каждой кнопкой у основания диалогового окна. См. Текст кнопки Настройки в Стандартном Диалоговом окне для получения дополнительной информации. Может также использоваться, чтобы определить значки, которые будут выведены на экран кнопками или компонентами некнопки, которые будут добавлены к строке кнопки.
Object initialValue
Определяет значение по умолчанию, которое будет выбрано.

Можно или позволить опции разделять дисплей на области ее значок значения по умолчанию или определять значок, используя тип сообщения или параметр значка. По умолчанию, область опции, создаваемая с showMessageDialog выводит на экран информационный значок, один создаваемый с showConfirmDialog или showInputDialog выводит на экран значок вопроса, и один создаваемый с a JOptionPane конструктор не выводит на экран значка. Чтобы определить, что диалоговое окно выводит на экран стандартный значок или никакой значок, определите тип сообщения, соответствующий значку, которого Вы требуете. Чтобы определить пользовательский значок, используйте параметр значка. Параметр значка имеет приоритет по типу сообщения; пока у параметра значка есть ненулевое значение, диалоговое окно выводит на экран указанный значок.

Настройка Текста кнопки

Когда Вы используете JOptionPane чтобы создать диалоговое окно, можно или использовать текст стандартной кнопки (который мог бы измениться стилем и локалью), или определите различный текст. По умолчанию тип области опции определяет, сколько кнопок появляется. Например, YES_NO_OPTION у диалоговых окон есть две кнопки, и YES_NO_CANCEL_OPTION у диалоговых окон есть три кнопки.

Следующий код, взятый от DialogDemo.java, создает два Да/Нет диалоговые окна. Первое диалоговое окно реализуется с showConfirmDialog, который использует формулировку стили для этих двух кнопок. Второе диалоговое использование showOptionDialog таким образом, это может настроить формулировку. За исключением формулировки изменений, диалоговые окна идентичны.

Да/нет диалоговое окно, в тех словах [но возможно преобразованный]
//default icon, custom title
int n = JOptionPane.showConfirmDialog(
    frame,
    "Would you like green eggs and ham?",
    "An Inane Question",
    JOptionPane.YES_NO_OPTION);
Да/нет диалоговое окно - другими словами
Object[] options = {"Yes, please",
                    "No way!"};
int n = JOptionPane.showOptionDialog(frame,
    "Would you like green eggs and ham?",
    "A Silly Question",
    JOptionPane.YES_NO_OPTION,
    JOptionPane.QUESTION_MESSAGE,
    null,     //do not use a custom Icon
    options,  //the titles of buttons
    options[0]); //default button title

Поскольку предыдущие фрагменты кода показали, showMessageDialog, showConfirmDialog, и showOptionDialog методы возвращают целое число, указывающее на выбор пользователя. Значения для этого целого числа YES_OPTION, NO_OPTION, CANCEL_OPTION, OK_OPTION, и CLOSED_OPTION. За исключением CLOSED_OPTION, каждая опция соответствует кнопке нажатый пользователь. Когда CLOSED_OPTION возвращается, это указывает, что пользователь, закрытый диалоговое окно явно, а не выбирая кнопку в опции, разделяет на области.

Даже если Вы изменяете строки, которые выводят на экран стандартные диалоговые кнопки, возвращаемое значение является все еще одним из предопределенных целых чисел. Например, a YES_NO_OPTION диалоговое окно всегда возвращает одно из следующих значений: YES_OPTION, NO_OPTION, или CLOSED_OPTION.

Получение Ввода Пользователя от Диалогового окна

Единственная форма showXxxDialog это не возвращается, целое число showInputDialog, который возвращается Object вместо этого. Это Object обычно a String отражение выбора пользователя. Вот пример использования showInputDialog создать диалоговое окно, которое позволяет пользователю выбирать одну из трех строк:

Входное диалоговое окно с полем комбинированного списка
Object[] possibilities = {"ham", "spam", "yam"};
String s = (String)JOptionPane.showInputDialog(
                    frame,
                    "Complete the sentence:\n"
                    + "\"Green eggs and...\"",
                    "Customized Dialog",
                    JOptionPane.PLAIN_MESSAGE,
                    icon,
                    possibilities,
                    "ham");

//If a string was returned, say so.
if ((s != null) && (s.length() > 0)) {
    setLabel("Green eggs and... " + s + "!");
    return;
}

//If you're here, the return value was null/empty.
setLabel("Come on, finish the sentence!");

Если Вы не хотите ограничить варианты пользователя, можно или использовать форму showInputDialog метод, который берет меньше параметров или определяет null для массива объектов. В стили Java, занимая место null для possibilities результаты в диалоговом окне, которое имеет текстовое поле и похоже на это:

Входное диалоговое окно с текстовым полем

Поскольку пользователь может ввести что-либо в текстовое поле, Вы могли бы хотеть проверить возвращенное значение и попросить, чтобы пользователь попробовал еще раз, если это недопустимо. Другой подход должен создать пользовательское диалоговое окно, которое проверяет вводимых пользователем данных прежде, чем это возвратится. См. CustomDialog.java для примера проверки допустимости данных.

Если Вы разрабатываете пользовательское диалоговое окно, Вы должны разработать API своего диалогового окна так, чтобы можно было запросить диалоговое окно о том, что выбрал пользователь. Например, CustomDialog имеет a getValidatedText метод, который возвращает текст вводимый пользователь.

Остановка Автоматического Диалогового Закрытия

По умолчанию, когда пользователь щелкает по a JOptionPane- создаваемая кнопка, диалоговые завершения. Но что, если Вы хотите проверить ответ пользователя прежде, чем закрыть диалоговое окно? В этом случае следует реализовать своего собственного слушателя изменения свойства так, чтобы, когда пользователь нажимает кнопку, диалоговое окно автоматически не закрылось.

DialogDemo содержит два диалоговых окна, которые реализуют слушателя изменения свойства. Одно из этих диалоговых окон является пользовательским модальным диалоговым окном, реализованным в CustomDialog, это использует JOptionPane и чтобы получить стандартный значок и получить помощь расположения. Другое диалоговое окно, код которого ниже, использует стандарт Да/Нет JOptionPane. Хотя это диалоговое окно довольно бесполезно как записано, его код достаточно прост, что можно использовать его в качестве шаблона для более сложных диалоговых окон.

Помимо установки свойства изменяют слушателя, следующий код также вызывает JDialog's setDefaultCloseOperation метод и реализации слушатель окна, который обрабатывает окно близко, пытаются должным образом. Если Вы не хотите быть уведомленными, когда пользователь закрывает окно явно, то проигнорируйте полужирный код.

final JOptionPane optionPane = new JOptionPane(
                "The only way to close this dialog is by\n"
                + "pressing one of the following buttons.\n"
                + "Do you understand?",
                JOptionPane.QUESTION_MESSAGE,
                JOptionPane.YES_NO_OPTION);

final JDialog dialog = new JDialog(frame, 
                             "Click a button",
                             true);
dialog.setContentPane(optionPane);
dialog.setDefaultCloseOperation(
    JDialog.DO_NOTHING_ON_CLOSE);
dialog.addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent we) {
        setLabel("Thwarted user attempt to close window.");
    }
});
optionPane.addPropertyChangeListener(
    new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent e) {
            String prop = e.getPropertyName();

            if (dialog.isVisible() 
             && (e.getSource() == optionPane)
             && (prop.equals(JOptionPane.VALUE_PROPERTY))) {
                //If you were going to check something
                //before closing the window, you'd do
                //it here.
                dialog.setVisible(false);
            }
        }
    });
dialog.pack();
dialog.setVisible(true);

int value = ((Integer)optionPane.getValue()).intValue();
if (value == JOptionPane.YES_OPTION) {
    setLabel("Good.");
} else if (value == JOptionPane.NO_OPTION) {
    setLabel("Try using the window decorations "
             + "to close the non-auto-closing dialog. "
             + "You can't!");
}

Диалоговый API

Следующие таблицы приводят обычно используемый JOptionPane и JDialog конструкторы и методы. Другие методы, которые Вы, вероятно, вызовете, определяются Dialog, Window и Component классы и включают pack, setSize, и setVisible.

API перечисляется следующим образом:

Показ Стандартных Модальных Диалоговых окон (Используя JOptionPane Методы класса)
Метод Цель
статическая пустота showMessageDialog (Компонент, Объект)
статическая пустота showMessageDialog (Компонент, Объект, Строка, интервал)
статическая пустота showMessageDialog (Компонент, Объект, Строка, интервал, Значок)
Покажите одну кнопку, модальное диалоговое окно, которое дает пользователю некоторую информацию. Параметры определяют (чтобы) родительский компонент, сообщение, title, передает тип, и значок для диалогового окна. См. Создание и Показ Простых Диалоговых окон для обсуждения параметров и их эффектов.
статический интервал showOptionDialog (Компонент, Объект, Строка, интервал, интервал, Значок, Объект [], Объект) Покажите специализированное модальное диалоговое окно. Параметры определяют (чтобы) родительский компонент, сообщение, title, тип опции, передает тип, значок, опции, и начальное значение для диалогового окна. См. Создание и Показ Простых Диалоговых окон для обсуждения параметров и их эффектов.
статический интервал showConfirmDialog (Компонент, Объект)
статический интервал showConfirmDialog (Компонент, Объект, Строка, интервал)
статический интервал showConfirmDialog (Компонент, Объект, Строка, интервал, интервал)
статический интервал showConfirmDialog (Компонент, Объект, Строка, интервал, интервал, Значок)
Покажите модальное диалоговое окно, которое задает пользователю вопрос. Параметры определяют (чтобы) родительский компонент, сообщение, title, тип опции, передает тип, и значок для диалогового окна. См. Создание и Показ Простых Диалоговых окон для обсуждения параметров и их эффектов.
статическая Строка showInputDialog (Объект)
статическая Строка showInputDialog (Компонент, Объект)
статическая Строка showInputDialog (Компонент, Объект, Строка, интервал)
статическая Строка showInputDialog (Компонент, Объект, Строка, интервал, Значок, Объект [], Объект)
Покажите модальное диалоговое окно, которое запрашивает пользователя ввод. Версия единственного параметра определяет только сообщение с родительским компонентом, который, как предполагают, был нулем. Параметры за другие версии определяют (чтобы) родительский компонент, сообщение, title, передает тип, значок, опции, и начальное значение для диалогового окна. См. Создание и Показ Простых Диалоговых окон для обсуждения параметров и их эффектов.
статическая пустота showInternalMessageDialog (...)
статическая пустота showInternalOptionDialog (...)
статическая пустота showInternalConfirmDialog (...)
статическая Строка showInternalInputDialog (...)
Реализуйте стандартное диалоговое окно как внутреннюю рамку. См. JOptionPane Документация API для точного списка параметров.
Методы для Использования JOptionPanes Непосредственно
Метод или Конструктор Цель
JOptionPane ()
JOptionPane (Объект)
JOptionPane (Объект, интервал)
JOptionPane (Объект, интервал, интервал)
JOptionPane (Объект, интервал, интервал, Значок)
JOptionPane (Объект, интервал, интервал, Значок, Объект [])
JOptionPane (Объект, интервал, интервал, Значок, Объект [], Объект)
Создает a JOptionPane экземпляр. См. Создание и Показ Простых Диалоговых окон для обсуждения параметров и их эффектов.
статический Фрейм getFrameForComponent (Компонент)
статический JDesktopPane getDesktopPaneForComponent (Компонент)
Удобный JOptionPane Методы class, которые находят фрейм или настольную область, соответственно, в котором находится указанный компонент.
интервал getMaxCharactersPerLineCount () Определяет, где разрывы строки будут автоматически вставлены в текст области опции. (Значение по умолчанию Integer.MAX_VALUE.) Чтобы использовать этот метод, следует создать a JOptionPane подкласс. Например, следующий код приводит к области опции с одним словом на строку, вследствие того, что каждое слово в строке является 5 символами или меньше:
JOptionPane op = new JOptionPane("This is the text.") {
    public int getMaxCharactersPerLineCount() {
        return 5;
    }
};

Часто Используемый JDialog Конструкторы и Методы
Метод или Конструктор Цель
JDialog ()
JDialog (Диалоговое окно)
JDialog (Диалоговое окно, булево)
JDialog (Диалоговое окно, Строка)
JDialog (Диалоговое окно, Строка, булева)
JDialog (Диалоговое окно, Строка, булева, GraphicsConfiguration)
JDialog (Фрейм)
JDialog (Фрейм, булев)
JDialog (Фрейм, Строка)
JDialog (Фрейм, Строка, булева)
JDialog (Фрейм, Строка, булева, GraphicsConfiguration)
JDialog (Владелец окна)
JDialog (Владелец окна, Диалоговое окно. ModalityType modalityType)
JDialog (Владелец окна, Строка title)
JDialog (Владелец окна, Строка title, Диалоговое окно. ModalityType modalityType)
JDialog (Владелец окна, Строка title, Диалоговое окно. ModalityType modalityType, gc GraphicsConfiguration)
Создает a JDialog экземпляр. Frame параметром, если таковые вообще имеются, является фрейм (обычно a JFrame объект), от которого зависит диалоговое окно. Приведите булев аргумент true определить модальное диалоговое окно, false или отсутствующий, чтобы определить немодальное диалоговое окно. Можно также определить title диалогового окна, используя строковый параметр.
освободите setContentPane (Контейнер)
Контейнер getContentPane ()
Получите и установите область контента, которая обычно является контейнером компонентов всего диалогового окна. См. Используя Высокоуровневые Контейнеры для получения дополнительной информации.
освободите setDefaultCloseOperation (интервал)
интервал getDefaultCloseOperation ()
Получите и установите то, что происходит, когда пользователь пытается закрыть диалоговое окно. Возможные значения: DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE (значение по умолчанию). См. Отвечающие Закрывающие окно События для получения дополнительной информации.
освободите setLocationRelativeTo (Компонент) Центрирует диалоговое окно по указанному компоненту.
статическая пустота setDefaultLookAndFeelDecorated (булев)
статический булев isDefaultLookAndFeelDecorated ()
Набор или получает подсказку относительно того, должны ли художественные оформления окна диалогового окна (такие как границы, или виджеты, чтобы закрыть окно) быть обеспечены текущим стилем. Иначе художественные оформления диалогового окна будут обеспечены текущим менеджером окон. См. Определение Художественных оформлений Окна для получения дополнительной информации.

Примеры то Использование Диалоговые окна

Эта таблица приводит примеры то использование JOptionPane или JDialog. Чтобы найти другие примеры, которые используют диалоговые окна, см. списки в качестве примера для индикаторов выполнения, покрасьте селекторов, и селекторов файла.

Пример Где Описано Примечания
DialogDemo,
CustomDialog
Этот раздел Создает много видов диалоговых окон, используя JOptionPane и JDialog.
Framework Переводит диалоговое окно подтверждения в рабочее состояние, когда пользователь выбирает пункт меню Quit.
ListDialog Как Использовать BoxLayout Реализует модальное диалоговое окно, содержащее список прокрутки и две кнопки. Не использует JOptionPane, за исключением служебного метода getFrameForComponent.

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Как Использовать Поля комбинированного списка
Следующая страница: Как Использовать текстовые Области и Редактор Пэйнс