Событие ActionEvent
Это простое событие означает, что надо выполнить какое-то действие. При этом неважно, что вызвало событие: щелчок мыши, нажатие клавиши или что-то другое.
В классе ActionEvent есть два полезных метода:
- метод getActionCommand () возвращает в виде строки string надпись на кнопке Button, точнее, то, что установлено методом setActionCoramand (Strings) класса Button, выбранный пункт списка List, или что-то другое, зависящее от компонента;
- метод getModifiers() возвращает код клавиш ALT, CTRL, Meta или SHIFT, если какая-нибудь одна или несколько из них были нажаты, в виде числа типа int; узнать, какие именно клавиши были нажаты, можно сравнением со статическими константами этого класса ALT_MASK, CTRL_MASK, META_MASK, SHIFT_MASK.
Примечание
Клавиши Meta на PC-клавиатуре нет, ее действие часто назначается на клавишу Esc или левую клавишу ALT.
Например:
public void actionPerformed(ActionEvent ae){ if (ae.getActionCommand() == "Open" && (ae.getModifiers() | ActionEvent.ALT_MASK)!= 0){ // Какие-то действия } }