![]() |
EventDispatcher - target, не понимаю
Цитата:
Просто не понимаю. Если не затруднит, объясните на примере. Спасибо. |
Пример есть прямо в хелпе, вроде все понятно сразу.
Код AS3:
|
Допустим тебе надо чтобы некий класс рассылал события "от своего имени", но при этом ты не можешь наследовать его от EventDispatcher (т.к. наследуешь от другого). Однако обеспечить функционал ты можешь агрегированием (композицией), заведя в этом классе встроенный объект EventDispatcher. Загвоздка только в том, что если рассылать события через него, то target у события будет ссылкой на этот объект EventDispatcher, а не на агрегат. Поскольку речь идет не столько о дисплейных объектах, то получить ссылку на сам агрегат будет затруднительно и потребует новых геттеров или особого класса события - target.parent тут не поможет. Вот для этого target и переобъявляется (хехе ну и слово). Однако нам ведь нужна уверенность, что этот новый таргет сможет полноценно прикинуться EventDispatcher - на него ведь будут вешать листенеры и т.п. Значит он обязан имплементить интерфейс IEventDispatcher.
Пример: Код AS3:
Код AS3:
|
GBee, мне вот и не было понятно зачем указывать target. В Вашем примере если
вместо Код AS3:
Код AS3:
Wolsh, спасибо теперь понятно. Что то не подумал о сходстве поля target у Event`а и аргумента target у ED. :) UPD: Ха-ха, перечитал свой вопрос. Целью читал как цепью, да и даже читая как "цель" не очень очевидно, что имеется ввиду target. Наверное, стоит читать английиский хелп. |
| Часовой пояс GMT +4, время: 11:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.