Page 161 - 4836
P. 161
вони до нього приєднані), є одне основне, що з самої суті
компонента і оброблюване значно частіше, ніж інші.
Наприклад, для кнопки це клацання на ній, а для списку -
вибір нового елемента.
Для відстеження та обробки такої події може бути
використаний особливий слухач ActionListener, що має один
метод:
public void actionPerformed (ActionEvent event).
У використання ActionListener є невелика перевага в
ефективності (так, при обробці натискання на кнопку не треба
реагувати на чотири зайвих події - адже навіть якщо методи-
обробники порожні, на виклик цих методів все одно
витрачаються ресурси). А крім того дуже зручно запам'ятати і
постійно використовувати один клас з одним методам і
звертатися до решти лише в тих відносно рідкісних випадках ,
коли виникне така необхідність.
Обробка натискання на кнопку ok у нашому прикладі
легко переписується для ActionListener :
ok.addMouseListener ( new ActionListener () {
public void actionPerformed ( ActionEvent event ) {
if ( loginField.getText ( ). equals ("Іван"))
JOptionPane.showMessageDialog ( null , " Вхід виконаний " );
else JOptionPane.showMessageDialog ( null, "Вхід НЕ
виконаний " ) ;
} } ) ;
Робота з меню в бібліотеці Swing
Невід'ємною частиною сучасних віконних програм є
меню, що представляє собою зручно згрупований набір
команд. Меню буває двох типів: головне і контекстне.
Головне меню розташовується уздовж верхньої межі вікна і
містить команди, що відносяться до всього додатком
(точніше, всі команди, які можна виконати, працюючи з
даними вікном) . Контекстне меню викликається натисненням
159