
3-й семестр / Лекции / 4 - Презентация - Полиморфизм
.pdf
Центрдистанционногообучения
Обработка событий в Java
online.mirea.ru

Центрдистанционногообучения
События и слушатели
•Стандартная библиотека классов Java содержит
несколько классов, которые представляют собой
типичные события
•Компоненты, такие как кнопки, генерируют событие,
когда оно происходит
•Объект слушателя "ждет” события, которое должно
произойти и реагирует соответствующим образом
•Мы можем конструировать объекты слушателя и
принимать любые действия, которые уместны при возникновении события
4-52 online.mirea.ru

Центрдистанционногообучения
События и слушатели
Event
Component |
Listener |
Объект |
соответствующий объект |
компонента может |
Слушателя |
генерировать |
предназначен для |
событие |
реагирования на событие |
Когда происходит событие, вызовы компонентов соответствующий метод слушателя, и
передает объекту, который описывает событие
4-53 online.mirea.ru

Центрдистанционногообучения
GUI Разработка
•Как правило, мы используем компоненты и события, которые представляют предопределенные классы в библиотеке классов Java
•Поэтому, чтобы создать программу Java, которая использует графический интерфейс мы должны:
•создать экземпляры объектов и настроить необходимые компоненты
•реализовать классы слушателя для любых событий, мы заботимся
•установить связь между слушателей и компонентами, которые генерируют соответствующие события
•Давайте теперь рассмотрим некоторые новые компоненты и посмотреть, как все это происходит вместе
4-54 online.mirea.ru

Центрдистанционногообучения
Структура GUI java
online.mirea.ru

Центрдистанционногообучения
концепция MVC
Приложение должно состоять из 3-х фундаментальных логических частей:
•controller (контроллер),
•model (модель),
•view (представление/отображение).
online.mirea.ru

Центрдистанционногообучения
концепция MVC
•Блок controller – преобразует действия пользователя (в
данном контексте, пользователь – не обязательно человек) во входящие параметры для
•Model и передает управление в Model. Блок model – реализует всю логику работы программы и подготавливает данные для отображения. Блок view – визуализирует результаты работы программы.
•Каждое действие пользователя всегда запускает цепочку controller->model->view.
online.mirea.ru

Центрдистанционногообучения
Структура GUI java
Окно JFrame
•Каждая GUI-программа запускается в окне и по ходу работы может открывать несколько дополнительных окон.
•В библиотеке Swing описан класс JFrame, представляющий собой окно с
рамкой и строкой заголовка (с кнопками «Свернуть», «Во весь экран» и «Закрыть»). Оно может изменять размеры и перемещаться по экрану.
Панель содержимого
•Напрямую в окне элементы управления не размещаются. Для этого служит панель содержимого, занимающая все пространство окна*.
•Обратиться к этой панели можно
методом getContentPane() класса JFrame. С помощью
метода add(Component component) можно добавить на нее любой элемент управления.
online.mirea.ru

Центрдистанционногообучения
Структура GUI java
Класс Container (контейнер)
•Элементы, которые содержат другие элементы, называются контейнерами. Все они являются потомками класса Container и наследуют от него ряд полезных методов:
•add(Component component) — добавляет в контейнер элемент component;
•remove(Component component) — удаляет из контейнера элемент component;
•removeAll() — удаляет все элементы контейнера;
•getComponentCount() — возвращает число элементов контейнера.
online.mirea.ru

Центрдистанционногообучения
Структура GUI java
класс JPanel (панель)
•Панель JPanel — это элемент управления, представляющий собой прямоугольное пространство, на котором можно размещать другие элементы. Элементы добавляются и удаляются методами, унаследованными от класса Container.
•На самом деле у каждой панели есть так называемый менеджер размещения, который определяет стратегию взаимного расположения элементов, добавляемых на панель. Его можно изменить
методом setLayout(LayoutManager manager). Но чтобы передать в этот метод нужный параметр, необходимо знать, какими бывают менеджеры.
online.mirea.ru