- •Основы объектно-ориентированного программирования
- •Оглавление
- •Тема 1. Введение в предмет и содержание дисциплины 4
- •Теоретический раздел
- •Тема 1. Введение в предмет и содержание дисциплины
- •Особенности Java
- •Комментарии
- •Ключевые слова
- •Литералы
- •Установка Java в переменных окружениях
- •Некоторые из особенностей элементов Java
- •Символы, строки и идентификаторы
- •Разделители
- •Операции
- •Основные приложения Java
- •Метод update()
- •Требование перерисовки
- •Тема 3. Введение в классы java. Методы и классы. Классы и наследование в java. Пакеты и интерфейсы Введение в классы Java
- •Синтаксис определения экземпляра класса
- •Модификаторы класса
- •Конструкторы
- •Ограничение доступа к элементам класса
- •Статические переменные и методы
- •Абстрактные методы
- •Методы final
- •Область видимости переменных
- •Переменные this и super
- •Тема 4. Основы ввода/вывода. Работа со строковыми данными Работа со строками
- •Потоки ввода-вывода информации
- •Байтовые и символьные потоки
- •Классы байтовых потоков
- •Классы символьных потоков
- •Предопределённые потоки
- •Тема 5. Работа с файлами Классы FileInputStream и FileOutputStream
- •Класс File
- •Класс RandomAccessFile
- •Тема 6. Методы и средства обработки исключений Методы и средства обработки исключений
- •Тема 7. Разработка апплетов, работа с графикой
- •Пакет awt
- •Класс Applet
- •Инициализация и завершение апплета
- •Запуск апплетов
- •Рисование линий в апплете
- •Рисование прямоугольников в апплете
- •Рисование эллипсов и кругов в апплете
- •Рисование дуг в апплете
- •Работа с цветом
- •Тема 8. Многопоточное программирование Интерфейсы в Java
- •Многопоточное программирование
- •Организация потоков
- •Создание нового потока
- •Тема 9. Разработка пользовательского интерфейса с использованием фреймов, элементов управления
- •События
- •Классы событий
- •Класс ActionEvent
- •Элементы-источники событий
- •Интерфейсы прослушивания событий
- •Классы пакета awt: Component, Window, Frame
- •Элементы управления Label, Button, Checkbox, Choice, List, Scrollbar
- •Элементы управления TextField и TextArea
- •Диалоговые окна
- •Контроль знаний Индивидуальная практическая работа № 1. «Объекты и классы»
- •Индивидульная практическая работа № 2. «Наследование и скрытие данных. Абстрактные классы и интерфейсы»
- •Контрольная работа № 1. «Работа с файлами»
- •Контрольная работа № 2. «Разработка пользовательского интерфейса с использованием фреймов, элементов управления»
- •Список использованных источников
Тема 9. Разработка пользовательского интерфейса с использованием фреймов, элементов управления
Цель: Научиться создавать простейшие GUI-приложения.
События
В основу Java-программирования наряду с другими положен механизм обработки событий.
Событие – объект, который описывает изменение состояния источника (нажатие кнопки, выбор пункта меню, разворачивание, сворачивание окошка, нажатие клавиши и т.д.). Источник – это объект, генерирующий события. Одно и то же событие может быть значимым для одних объектов и не существенным для других.
В Java различают два механизма обработки событий:
1) с помощью метода handleEvent() (применялся до версии jdk 1.1 (Java 1.0));
2) с помощью модели делегирования событий.
Далее будем рассматривать особенности обработки событий с применением второго механизма. В соответствии с моделью делегирования событий в обработке событий участвуют 2 объекта: источник (source) и блок прослушивания (listener − интерфейс для перехода конкретного вида события от конкретного компонента). Источник − объект, генерирующий событие. Блок прослушивания – объект, получающий уведомление о возникновении события, зарегистрированного одним или несколькими источниками, путем вызова одного из его методов (методов блока прослушивания) для приема и обработки этих уведомлений.
Методы обработки событий находятся в пакете java.awt.event.
Классы событий
В корне иерархии классов событий Java находится класс EventObject, находящийся в пакете java.util. Класс EventObject содержит 2 метода:
Object getSource( ) – возвращает источник события;
toString( ) – возвращает название этого события в виде строки.
В Java определены несколько типов событий (табл. 3.1).
Таблица3.1
Классы событий
Класс событий |
Описание |
ActionEvent |
Генерируется, когда нажата кнопка, дважды щелкнут элемент списка или выбран пункт меню |
AdjustmentEvent |
Генерируется при манипуляциях с полосой прокрутки |
ComponentEvent |
Генерируется, когда компонент скрыт, перемещен, изменен в размере или становится видимым |
ContainerEvent |
Генерируется, когда компонент добавлен или удален из контейнера |
FocusEvent |
Генерируется, когда компонент получает или теряет фокус |
ItemEvent |
Генерируется, когда помечен флажок или элемент списка, сделан выбор элемента в списке, выбран или отменен элемент меню с меткой |
KeyEvent |
Генерируется, когда получен ввод с клавиатуры |
MouseEvent |
Генерируется, когда объект перетащен мышью (dragged), перемещен (moved), произошел щелчок (clicked), нажата (pressed) или отпущена (released) кнопка мыши, указатель мыши входит или выходит в/за границы компонента |
TextEvent |
Генерируется, когда изменено значение текстового поля |
WindowEvent |
Генерируется, когда окно активизировано, закрыто, развернуто, организован выход из него |
