общение между разными классами - PullRequest
0 голосов
/ 01 апреля 2010

Я выучил as3 в течение полутора лет, в эти дни я обнаружил, что у меня всегда есть проблема, которая заставляет разные классы общаться друг с другом.

Я понимаю, что есть некоторые способы решения (если я ошибаюсь, пожалуйста, скажите мне ...): 1. используя методы get set 2. eventdispatch для отправки пользовательского события.

Сегодня я снова работаю над этим запутанным вопросом. Я до сих пор не могу пройти через это. на этот раз я хочу сделать следующее: я хочу использовать кнопку (_zoom) для управления mc (_board), расположенной в другом классе. Позвольте мне дать вам простую структуру:

ProjectAppear.as
  |_   _board (mc)
  |_   Project.as
            |_   _work (mc)
                      |_   _zoom (mc)

Я думаю, что я добавляю прослушиватель событий мыши для _zoom, а затем при щелчке мыши он отправляет пользовательское событие, а затем ... Я теряюсь здесь ....

Ответы [ 2 ]

0 голосов
/ 11 декабря 2010

Существует похожий вопрос, который использует подход диспетчеризации пользовательских событий, который вы можете найти здесь:

Как передать переменные в ActionScript?

0 голосов
/ 01 апреля 2010

Таким образом, если вы отправляете свое пользовательское событие в классе Project, который содержит _zoom mc, и ProjectAppear имеет ссылку как на Project, так и на _board, то внутри ProjectAppear вы можете добавить прослушиватель событий в Project для пользовательского события ( myProject.addEventListener ("myCustomEvent", eventHandler и т. д ....) и в функции eventHandler (которая будет ссылаться как на _board, так и Project, поскольку она находится в ProjectAppear) вы можете делать все, что вам нужно с _board. Надеюсь, что это поможет !

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...