![]() |
Массив ссылок на объекты
Уже перелопатила несколько учебников и никак не могу понять, есть ли в АС возможность создать массив ссылок на объекты, например принадлежащие одному мувику? или массив кнопок (как в С++)?
Если нет, то как решается подобная проблема: есть достаточно большое количество однотипных объектов (например, кнопок), которые одинаково реагируют на одно и то же событие (например, движение мыши). Действия при наступлении события описываются в отдельной функции, а вот реакцию на это событие приходится описывать отдельно для каждого объекта. А если их сто?! Пробовала делать через листенера, но ведь он не может определить, какой конкретно объект из списка вызвал событие. Или может? Если может, то как получить на него ссылку. Заранее спасибо. |
создай свой класс
|
Цитата:
|
Zmet, используй EventDispatcher, там есть возможность определения объекта, отославшего событие.
|
Цитата:
|
Класс mx.events.EventDispatcher
http://livedocs.macromedia.com/flash.../00003473.html |
объект может передавать свое _name, так же можно просмотреть все объекты внутри клипа: (for var name in clip) { trace (name) ...}
я не совсем понял в чем собственно задача? (что неообходимо реализовать?) |
Мерси
|
Цитата:
Есть сто разных картинок. При нажатии на любую картинку ее прозрачность становится равной 50. Как описать эти действия для всех картинок сразу. Есть: Код:
pict1.onSobytie=function(){Код:
pict[i].onSobytie=function(){ |
Код:
import mx.events.EventDispatcher; |
Да ладно, неужели сработает?! Попробую :)
|
Я дополнил, посмотри.
|
Вот это посолидней! Ваяю. Результат скажу завтра :) Спасибо
|
Прискорбно. Ничего не получилось...
|
не удивительно, вы же не прочитали правил форума, вам предупреждение.
|
2 __etc: если судить по задаче, то можно обойтись и без eventDispether'a, а просто использовать this в в функции обработчике.
|
Цитата:
Спасибо всем. Один из вариантов решения проблемы нашла на RealTime. Если кому-то интересно, выкладываю кусочек кода: Код:
for (var i in mc){ |
Цитата:
|
Код:
var container_mc:MovieClip=this.createEmptyMovieClip("container_mc", this.getNextHighestDepth()); |
А вот двадцать раз clips[m] можно было и не писать. Мало того, что ухудшает читабельность, так ещё и тормозит.
|
| Часовой пояс GMT +4, время: 17:26. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.