Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   загрузка swf (http://www.flasher.ru/forum/showthread.php?t=129929)

Ilut 14.09.2009 06:01

загрузка swf
 
Доброе время суток! Я загружаю во флешку swf'ки, лежащие рядом в отдельной папке. Их загрузка производится с помощью XML, в которой хранятся имена swf причем их количество может быть разнообразным. Загружаю я следующим образом:
Код AS3:

ldr= new Loader();        
var rq:URLRequest = new URLRequest(str);
ldr.load(rq);

затем загруженную swf помещаю в мувик
Код AS3:

var mc:MovieClip=MovieClip(ldr.content);        
tcas_window.main_w.addChild(mc);

и так для каждой.
Но у меня в итоге отображается только 1 swf'ка - последняя. Если я не ошибаюсь, то это происходит, потому что все последующие swf загружаются в тот же лоадер и он просто помещается в новый мувик. Возникает вопрос, как сделать так, чтобы все загруженные swf отображались?

Заранее благодарю за помощь!

BlooDHounD 14.09.2009 09:21

сделать для каждой swf'ки новые лоадеры?

Ilut 14.09.2009 10:53

Да, решение влоб, тоже думал об этом. Но если вы имеете ввиду создать кучу переменных, то напомню, что их число может быть любым. А вообще, у меня итак каждый раз вызывается конструктор нового объекта, поэтому мне кажется странным что это происходит... Может кто-нибудь подскажет что-нибудь получше?

Котяра 14.09.2009 11:40

просто оберните в цикл
Код AS3:

for (var i:int = 0; i < 10; i++) 
{
var loader:Loader= new Loader();       
var request:URLRequest = new URLRequest(str+i);
loader.load(request);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoad);
}

Код AS3:

public function onLoad(event:Event)
{
var contentLoaderInfo: LoaderInfo = event.target as LoaderInfo;
contentLoaderInfo.removeEventListener(Event.COMPLETE,onLoad);
var mc:MovieClip=MovieClip(contentLoaderInfo.content);       
tcas_window.main_w.addChild(mc);
}

можно и по другому.. загружать следующий клип ПОСЛЕ загрузки предыдущего

BlooDHounD 14.09.2009 14:27

Ilut, любым ... 4 миллиарда вам хватит? тогда используйте массив для хранения.

Ilut 14.09.2009 15:25

Большое спасибо, Котяра, ваш ответ очень помог, только дело было не в цикле, а в том чтобы юзать target :)


Часовой пояс GMT +4, время: 04:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.