Page 149 - 4836
P. 149

подія, він викличе відповідний метод у свого спостерігача. У
                            цьому методі і буде запрограмована реакція на подію.
                                   Для  того,  щоб  спостережуваний  об'єкт  міг  викликати
                            метод  спостерігача,  він  повинен  знати  про  те,  що  такий
                            спостерігач  існує.  Тому  у  спостережуваного  попередньо
                            повинен  бути  викликаний  спеціальний  метод,  що  реєструє
                            його спостерігача.
                                   Зауважимо,  що  в  даній  схемі  один  спостерігач  може
                            бути  зареєстрований  у  декількох  об'єктів  (тобто  однаково
                            реагувати на зміни в кожному з них), а у одного об'єкта може
                            бути  декілька  спостерігачів  (тобто  при  виникненні  події
                            виконується  кілька  незалежних  методів  -  обробників).  Це
                            вельми збільшує гнучкість програмування.

                                   Механізм обробки подій бібліотеки Swing
                                   У  контексті  графічного  інтерфейсу  користувача
                            спостережуваними об'єктами є елементи управління: кнопки,
                            прапорці,  меню  і  т.д.  Вони  можуть  повідомити  своїм
                            спостерігачам  про  певні  події,  як  елементарні  (наведення
                            мишкою,  натискання  клавіші  на  клавіатурі),  так  і  про
                            високорівневі  (зміна  тексту  в  текстовому  полі,  вибір  нового
                            елемента в випадному списку і т.д.).
                                   Спостерігачами  повинні  бути  об'єкти  класів,  що
                            підтримують  спеціальні  інтерфейси  (згадаємо,  що  в  класі
                            спостерігача  повинні  бути  певні  методи,  про  які  «знає»
                            спостережуваний і викликає їх при настанні події). Такі класи
                            в термінології Swing називаються слухачами.
                                   Інтерфейс MouseListener і обробка подій від мишки

                                   Ми  розглянемо  технологію  написання  слухачів  на
                            прикладі слухачів подій мишки.
                                   Події від мишки - один з найпопулярніших типів подій.
                            Практично будь-який елемент управління здатний повідомити
                            про те, що  на  нього навели  мишу,  клацнули  по ньому  і  т.д.




                                                           147
   144   145   146   147   148   149   150   151   152   153   154