showMessageDialog - виводить на екран повідомлення і чекає, поки користувач не клацне на кнопці ОК.
showConfirmDialog - виводить на екран повідомлення і чекає підтвердження (ОК або Cancel (Скасувати)).
showOptionDialog - виводить на екран повідомлення і надає користувачеві вибір з кількох варіантів.
showInputDialog - виводить на екран повідомлення і поле редагування, в якому користувач повинен ввести інформацію. Діалогове вікно може містити компонент для введення даних. Цим компонентом може бути поле редагування, в якому користувач вводить довільну рядок, або випадає, один з пунктів якого користувач повинен вибрати.
Компонування діалогових вікон і вибір піктограм для стандартних повідомлень залежить від стилю інтерфейсу.
Піктограма в лівій частині вікна вибирається залежно від типу повідомлення.
Існують п'ять типів повідомлень:
Для повідомлення PLAIN_MESSAGE піктограма не передбачена. Для кожного з типів діалогових вікон існує також метод, що дозволяє використовувати свою власну піктограму.
З кожним з типів діалогових вікон можна пов'язати певне повідомлення, яке може бути рядком, піктограмою, компонентом користувальницького інтерфейсу або будь-яким іншим об'єктом. Нижче показано, як ці повідомлення відображаються на екрані.
- String - виводить рядок
- Icon - відображає піктограму
- Component - відображає компонент
- Object [] - виводить всі об'єкти, відображаючи їх один поверх іншого.
- Будь-який інший об'єкт - застосовує метод toString і виводить на екран рядок, отриману в результаті цього перетворення.
Зрозуміло, в більшості випадків на екран виводиться саме рядок повідомлення. У той же час можливість відображати в діалоговим вікні об'єкти класу Component забезпечує більшу гнучкість. Зовнішній вигляд кнопок, розміщених в нижній частині вікна, залежить від типу діалогу і типу опцій.
Викликаючи методи showMessageDialog () або showInputDialog (). ви обмежуєтеся стандартним набором кнопок (ОК або ОК і Cancel). Викликаючи метод showConfirmDialog (). можна вибрати один з чотирьох типів опцій:
- DEFAULT_OPTION
- YES_NO_OPTION
- YES_NO_CANCEL_OPTION
- OK_CANCEL_OPTION
За допомогою методу showOptionDialog () можна вказати довільний набір варіантів, задавши масив об'єктів, що відповідають кожному з них. Елементи цього масиву відображаються на екрані в такий спосіб.
- String - створює кнопку, міткою якої є заданий рядок.
- Icon - створює кнопку, міткою якої є задана піктограма.
- Component - відображає компонент.
- Будь-який інший об'єкт - застосовує метод toString і створює кнопку, міткою якої є отримана в результаті рядок.
Статичні методи, призначені для створення діалогових вікон, повертають у такому значенні.
- showMessageDialog - повертається значення відсутній.
- showConfirmDialog - ціле число, відповідне вибраному варіанту.
- showOptionDialog - ціле число, відповідне вибраному варіанту.
- showInputDialog - рядок, введений або обрана користувачем.
Методи showConfirmDialog () і showOptionDialog () повертають ціле число, що позначають кнопку, на якій клацнув користувач. У діалоговому вікні для вибору опцій це число є порядковим номером. Якщо замість вибору опцій користувач закрив діалогове вікно, повертається значення CLOSED_OPTION. Константи, що використовуються в якості значень, що повертаються, наведені нижче.
Незважаючи на велику кількість мнемонічних позначень, створити діалогове вікно досить просто.
- Виберіть тип діалогового вікна (повідомлення, підтвердження, вибір або введення).
- Виберіть піктограму (помилка, інформація, попередження, питання, своя власна або ніякої).
- Виберіть повідомлення (рядок, піктограма, призначений для користувача компонент або масив компонентів).
- Якщо ви вибрали діалогове вікно для підтвердження вибору, задайте тип варіантів (за замовчуванням, Yes / No, No / Cancel або OK / Cancel).
- Якщо ви вибрали діалогове вікно для вибору опцій, задайте варіанти (рядки, піктограми або власні компоненти), а також варіант, обираний за замовчуванням.
- Якщо ви вибрали діалогове вікно для введення даних, виберіть поле редагування або, що випадає.
- Знайдіть відповідний метод в клас JOptionPane.