Изучаем Java

Вы здесь: Главная >> Java-самоучитель >> Формы и диалоговые окна в Java

Формы и диалоговые окна в Java


Формы

Формы (фреймовые окна) создаются на основе классов Frame и JFrame. Создать форму можно с помощью мастера (его значок Frame располагается на той же вкладке, что и значок Panel). Рассмотрим пример создания формы с помощью мастера.

1. Создайте приложение с именем проекта и заголовком окна MyFrame.
2. Выберите команду File - >New и в секции General выберите значок Frame Откроется окно, показанное на рис. 9.8.

Рис 9.8. Диалоговое окно Frame Wizard

3. Выберите все, как на рисунке, и щелкните на кнопке ОК.
4. Измените компоновку формы 1 на XYLayout.
5. Добавьте в форму 1 (главную форму —класс Framel) две кнопки JButton со значениями свойства Text, равными "Показать" и "Скрыть".
6. Добавьте в конструктор класса Frame2 следующий код.
this.setSize(new Dimension(300, 300));
this.setTitle("Новое окно");
В этом коде мы устанавливаем размер созданного окна, являющегося экземпляром класса Frame2, и определяем заголовок для этого окна.
7. Теперь добавьте после объявления всех компонентов в классе Framel следующий код. private Frame2 myFrame = new Frame2();
8. Создайте обработчики события actionPerformed для обеих кнопок в форме 1 (листинг 9.5).

Листинг 9.5
Создание обработчики события для кнопок в форме 1

public void jButtonl_actionPerformed(ActionEvent e) {
myFrame.setVisible(true);
}
public void jButton2_actionPerformed(ActionEvent e) {
myFrame.setVisible(false);
}

Диалоговые окна, окна сообщений и окна запроса

Альтернатива формам — диалоговые окна. Они создаются на основе классов Dialog (java.awt) и JDialog (javax.swing). Мастер для создания заготовки диалогового окна открывается так: выберите значок Dialog на вкладке General окна Object Gallery, которое открывается с помощью команды File -> New. Откроется следующее диалоговое окно (рис. 9.9).

Рис 9.9 Диалоговое окно Dialog Wizard

Существуют готовые диалоговые окна, которые тоже можно использовать. Вот перечень тех диалоговых окон, которые мы рассмотрим далее.

- JColorChooser. Окно выбора цвета. Его мы уже кратко рассматривали ранее (пакет javax.swing, секция Swing Containers)
- JFileChooser. Окно выбора файла (пакет javax.swing, секция Swing Containers).
- JOptionPane – набор диалоговых окон, которые представляют собой модальные окна (т.е. такие, которые не позволяют передавать фокус другим окнам приложения, пока в них не будут выполнены необходимые действия и они не будут закрыты): окна подтверждения, окна ввода и др. (пакет javax.swing, секция Swing Containers).

Диалоговое окно JColorChooser вызывается с помощью метода showDialog. Вот как выглядит это диалоговое окно с заголовком «Выбор цвета текста».

Рис. 9.10. Диалоговое окно JColorChooser с заголовком Выбор цвета текста

Диалоговое окно JFileChooser предусматривает три метода для открытия данного окна в разных вариациях: showDialog — простое отображение этого окна (т.е. с установлением заголовка окна и имени кнопки), showCpenDialog — отображение окна открытия файла — значение строки заголовка окна и кнопки, равное Open (рис. 9.11).
Метод showSaveDialog — отображение окна сохранения файла — значение строки заголовка окна и кнопки, равное Save (рис 9.12).

Рис. 9.11. Диалоговое окно Open

Рис. 9.12. Диалоговое окно Save

Компонент JOptionPane.
Можно создать свое диалоговое окно с помощью этого компонента, а можно использовать стандартные окна (два типа таких окон мы рассмотрим — окна сообщений и окна запроса).

Приведем пример использования этого компонента.

1. Создайте приложение с именем проекта JOptionPane и таким же заголовком окна.
2. Измените компоновку на компоновку XYLayout.
3. Добавьте компонент JOptionPane к значку UI в окне структуры.
4. Добавьте в форму три компонента JButton со свойствами Text, равными "showMessageDialogs", showConfirmDialogs" и "showInputDialogs", и компонент JLabel со свойством Text, равным " ".
5. Создайте для кнопок обработчики событий actionPerformed (листинг 9.6).

Листинг 9.6.
Создание обработчика событий

Разберем этот код.
Есть пять типов сообщений:

ERROR_MESSAGE (сообщение об ошибке),
INFORMAT10N_MESSAGE (информационное сообщение),
PLAIN_MESSAGE (свое сообщение без каких-либо отличительных знаков — например, значка),
QUESTI0N_MESSAGE (вопрос пользователю) и
WARNING__MESSAGE (предупредительное окно).

Картинки можно создавать на основе класса ImageIcon, в параметрах указывая имя файла. Если диапазон возможных значений для окна ввода указан — появляется список, если нет — текстовое поле.

Далее представлены все диалоговые окна, которые появляются на экране, в качестве картинок из файлов my.gif и picture.gif. Также представлены измененные картинки "Водяные лилии" и "Закат", которые прилагаются к набору картинок WindowsХР (рис. 9.13- 9.21).

Рис. 9.13. Информационное сообщение

Рис. 9.14. Сообщение об ошибке

Рис. 9.15. Сообщение с вопросом

Рис. 9.16. Восклицательное сообщение

Рис. 9.17. Сообщение прочего типа

Рис. 9.18. Информационное окно с кнопками подтверждения или отказа

Рис. 9.19. Окно с требованием обязательного выбора одного из двух вариантов


Рис. 9.20. Окно с предложением выбрать значение из списка

Рис. 9.21. Окно для ввода информации


Партнеры сайта