|
|
|||||
Общее событие
Всем привет.
Есть класс BlackList, Slide, Moderation. Внутри Slide по нажатию на кнопку вызываю метод в BlackList, в котором диспатчится событие. Это событие хочу ловить в этом же классе Slide и в Moderation для дальнейшей обработки. Для этого в Slide и в Moderation создан экземпляр класса BlackList со слушателями. Почему событие может не ловиться внутри Moderation? (догадки пока, что в каждом созданном экземпляре BlackList события независимы друг от друга..) Для наглядности набросал пример: Главный класс Main package { import flash.display.Sprite; import flash.events.Event; public class Main extends Sprite { private var _window:Window; private var _list:List; public function Main() { _window = new Window(); addChild(_window); _list = new List(); _list.addEventListener(List.CHANGE, onChangeList); } private function onChangeList(event:Event):void { trace('Main > LIST CHANGED'); // этот обработчик события не срабатывает } } } package { import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; public class Window extends Sprite { private var _btn:Sprite; private var _list:List; public function Window() { _btn = new Sprite(); _btn.graphics.beginFill(0x0000FF); _btn.graphics.drawRect(0,0,50,50); _btn.graphics.endFill(); _btn.x = _btn.y = 20; addChild(_btn); _btn.addEventListener(MouseEvent.CLICK, onClickBtn); _list = new List(); _list.addEventListener(List.CHANGE, onChangeList); } private function onClickBtn(event:MouseEvent):void { _list.add(); } private function onChangeList(event:Event):void { trace('Window > LIST CHANGED'); // здесь срабатывает } } } И класс List, который генерит событие при нажатии на кнопку внутри Window Почему не получается поймать событие в главном классе Main ?? Потому что событие закреплено на уровне каждого экземпляра, а не на уровне класса List?
__________________
кто не отвечает, того garbage collector забирает Последний раз редактировалось djken; 18.05.2020 в 18:51. Причина: добавил пример скрипта |
Часовой пояс GMT +4, время: 11:03. |
|
« Предыдущая тема | Следующая тема » |
Теги |
события |
|
|