Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Обработка событий



При работе пользователя с интерфейсом приложения возникает ряд событий – перемещение мыши по экрану, нажатие кнопок клавиатуры (например, ввод текста в текстовое поле), открытие/закрытие/перемещение формы, выбор элементов списка, нажатие кнопок и т.д.

Каждое возникающее событие может быть обработано, т.е. в программе указан набор операций (процедура), которые будут выполняться при возникновении данного события.

Событие с одной стороны относится к определенному элементу управления, с другой стороны у каждого элемента управления имеется множество событий, которые могут быть обработаны. Программист сам решает какие события у каких элементов управления обрабатывать, а какие нет. Например, если на форме размещены две кнопки button1 и button2, то мы можем у кнопки button1 запрограммировать (обработать) событие «нажатие на кнопку», а у кнопки button2 запрограммировать событие «перемещение мыши поверх кнопки». Это не значит, что, например, у кнопки button2 не происходит событие «нажатие на кнопку» когда пользователь щелкает на нее, но так как оно не обработано, то никаких специальных действий при этом выполняться не будет.

В Java для реализации механизма обработки событий применен специальный прием программирования, называемый «Слушатель». Суть этого метода в том, что каждому элементу управления может быть назначен специальный объект-слушатель, который прослушивает этот элемент управления на предмет возникновения события, и при его возникновении вызывает метод, определенный внутри объекта-слушателя. Этот метод и содержит операции, определяемые программистом и выполняемые при возникновении данного события.

Для каждого типа события (например «Нажатие на кнопку клавиатуры», «Выбор элемента списка» и т.д.) существует определенный интерфейс (interface), в котором содержатся объявления одного или нескольких методов, вызываемых при возникновении события. Класс-слушатель, предназначенный для обработки событий определенного типа должен реализовать соответствующий интерфейс и определить (реализовать) методы, объявленные в этом интерфейсе.

Таким образом, для реализации обработки события определенного компонента программист должен выполнить следующие действия:

Создание класса слушателя, реализующего соответствующий интерфейс

Реализация в классе слушателя одного или нескольких методов, объявленных в интерфейсе и выполняемых в случае возникновения события.

Создание объекта-слушателя

Назначение объекта-слушателя прослушиваемому объекту (т.е. объекту, у которого необходимо обработать событие). Например:

class MyListener implements ListSelectionListener {

public void valueChanged(ListSelectionEvent e) {

/* последовательность действий, выполняемые в случае возникновения события */

}

}

Создаем объект-слушатель (в конструкторе формы):

MyListener m = new MyListener();

Назначаем объект-слушатель списку list1 с помощью метода списка (JList) addListSelectionListener(ListSelectionListener l):

list1.addListSelectionListener(ml);





Дата публикования: 2015-10-09; Прочитано: 211 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...