Просмотр полной версии : Команда для нескольких мувиклипов.
Добрый день!
После наступления определенного события должны останавливаться/запускаться сразу несколько мувиклипов.
1. Как можно указать слой, чтобы все мувиклипы на этом слое остановились по команде Stop() ?
2. Или если несколько мувиклипов сложить в один, как можно их остановить, чтобы не прописывать имя каждого мувиклипа, а только родительский?
2)
for (var i:int = 0; i < container.numChildren; i++)
{
var child:MovieClip = container.getChildAt(i) as MovieClip;
if (child) child.stop();
// или
if (child) child.play();
}
Добавлено через 1 минуту
1) Слои во Flash IDE исключительно для визуального удобства. В конечном swf этих слоев не существует. Существуют другие.
Идею понял - в цикле изобразить. Сам бы не написал.
Спасибо за помощь!
incvizitor
19.09.2011, 19:12
у детей могут тоже быть дети.
function recursiveStop(obj:MovieClip):void{
obj.stop();
for(var i:uint = 0; i < obj.numChildren; i++){
var child:DisplayObject = obj.getChildAt(i);
if(child is MovieClip) recursiveStop(child as MovieClip);
}
}
Добавлено через 8 минут
А вообще складывать мувики в один контейнер нужно тогда, когда они должны лежать в одном контейнере. Что бы сгруппировать несколько мувиков, можно сложить их в Array, или определить некий интерфейс по обращении к группе объектов. Примером может быть паттерн фасад. Или создать модель, которую будут слушать все мувики, что бы определенный момент остановиться.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.