Интерфейс | Переопределяемые методы | Описание |
ActionListener | actionPerformed(ActionEvent e) | произведено некоторое действие |
AdjustmentListener | adjustementValueChanged (AdjustmentEvent) | изменилось значение в линии прокрутки |
ComponentListener | componentResized (ComponentEvent e) | компонент изменил размер |
componentMoved(ComponentEvent e) | компонент изменил расположение | |
componentShown (ComponentEvent e) | компонент отображен | |
componentHidden (ComponentEvent e) | компонент спрятан | |
ContainerListener | componentAdded (ContainerEvent e) | компонент добавленв контейнер |
componentRemoved (ContainerEvent e) | компонент убран из контейнера | |
FocusListener | focusGained(FocusEvent e) | компонент получил фокус ввода |
focusLost (FocusEvent e) | компонент потерял фокус ввода | |
ItemListener | ItemStateChaged (ItemEvent e) | изменился выделенный пункт выбора |
KeyListener | keyTyped(KeyEvent e) | напечатан символ |
keyPressed(KeyEvent e) | нажата клавиша | |
keyReleased(KeyEvent e) | нажатая клавиша отпущена | |
MouseListener | mouseClicked(MouseEvent e) | нажата и отпущена кнопка мыши |
mousePressed(MouseEvent e) | нажата кнопка мыши | |
mouseReleased(MouseEvent e) | отпущена нажатая кнопка мыши | |
mouseEntered(MouseEvent e) | указатель мыши вошел в область компонента | |
mouseExited(MouseEvent e) | указатель мыши вышел из области компонента | |
MouseMotionListener | mouseDragged(MouseEvent e) | перемещен указатель мыши при нажатой кнопке мыши |
mouseMoved(MouseEvent e) | перемещен указатель мыши при не нажатой кнопке мыши | |
TextListener | textValueChanged(TextEvent e) | текстовое значение изменилось |
WindowListener | windowOpened(WindowEvent e) | окно открыто |
windowClosing(WindowEvent e) | окно закрывается | |
windowClosed(WindowEvent e) | окно закрыто | |
windowIconified(WindowEvent e) | окно минимизировано | |
windowDeiconified(WindowEvent e) | окно восстановило размеры после минимизации | |
windowActivated(WindowEvent e) | окно активировано (является окном ввода информации) | |
windowDeactivated(WindowEvent e) | окно перестало быть активным окном |
Некоторым интерфейсам событий соответствуют открытые абстрактные классы-адаптеры, содержащие пустые методы для обработки событий:
Интерфейс | Класс |
ComponentListener | ComponentAdapter |
ContainerListener | ContainerAdapter |
FocusListener | FocusAdapter |
KeyListener | KeyAdapter |
MouseListener | MouseAdapter |
MouseMotionListener | MouseMotionAdapter |
MouseInputListener | MouseInputAdapter |
WindowListener | WindowAdapted |
К действиям относятся события, поступающие от компонентов:
Компонент | Генерируемое событие |
Button | нажатие на кнопку мыши |
MenuItem | нажатие на кнопку мыши |
List | нажатие на кнопку мыши |
нажатие на клавишу возврата каретки | |
TextField | нажатие на клавишу возврата каретки |
Управляющие компоненты регистрируют “прослушивание” событий при помощи методов вида:
void addТипКомпонентаListener(объектРеализующийПрослушивание)
и освобождаются от “прослушивания” событий при помощи соответствующих методов вида:
void removeТипКомпонентаListener(объектРеализующийПрослушивание)
Класс | Метод для добавления “слушателя” события |
Componenet | addComponentListener(ComponenetListener l)addFocusListener(FocusListener l)addKeyListener(KeyListener)addMouseListener(MouseListener l)addMouseMotionListener(MouseMotionListener l) |
Container | addContainerListener(ContainerListener l) |
Button | addActionListener(ActionListener l) |
Checkbox | addItemListener(ItemListener l) |
CheckboxMenuItem | addItemListener(ItemListener l) |
Choice | addItemListener(ItemListener l) |
List | addItemListener(ItemListener l)addActionListener(ActionListener l) |
MenuItem | addActionListener(ActionListener l) |
Scrollbar | addAdjustnmentListener(AdjustmentListener l) |
TextComponent | addTextListener(TextListener l) |
TextArea | addActionListener(ActionListener l) |
Window | addWindowListener(WindowListener l) |
Приведем пример приложения, обрабатывающего событие ActionEvent
Пример работы с событием действия (ActionEvent)
import java.awt.*;
import java.awt.event.*;
public class FrameActionEvent extends Frame implements ActionListener{
Labell = newLabel();// Создадим метку для вывода сообщения
Buttonb = newButton("OK");// Создадим кнопку, генерирующую сообщение
publicvoidFrameActionEvent()
{
setLayout(null);// Установим абсолютное размещение компонентов
setBackground(Color.lightGray);// Установим светло-серый фон
// Установим границы управляющих компонентов
l.setBounds(20, 10, 40, 20); // метки
b.setBounds(20, 40, 40, 20); // кнопки
// Зарегистрируем для кнопки “прослушивание” событий
b.addActionListener(this);
// Добавим в окно
add(l); // метку
add(b); // кнопку
}
// Реализуем обработку события действия
public void actionPerformed(ActionEvent e)
{
l.setText("I'mOK!");
}
}