Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Проблема с LoadClip (http://www.flasher.ru/forum/showthread.php?t=145067)

Korobok 28.09.2010 19:48

Проблема с LoadClip
 
Добрый день. Помогите, пожалуйста, со следующим вопросом:
Имеется подгружаемый swf и прелоадер к нему:
Код AS1/AS2:

var container:MovieClip = createEmptyMovieClip("container", 1);
var mclListener:Object = new Object();
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(mclListener);
 
mcLoader.loadClip("clip.swf", container);
mclListener.onLoadInit = function(target_mc:MovieClip) {
}
 
mclListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void {
    _root.pole1.text=(int(bytesLoaded/bytesTotal*100) + " %");
}

Проблема в том, что анимация в swf начинает проигрываться сражу же при начале его загрузки и продолжается по ее мере, а необходимо, чтобы ролик сначала загрузился полностью. Подскажите, как организовать, чтобы swf начал проигрываться только после полной загрузки?

mooncar 28.09.2010 20:41

Пропишите в нем stop() в первом кадре.
А в onLoadInit
Код AS1/AS2:

target_mc.play();

И еще. Это совсем не принципиально для большинства случаев, но разместите код логичнее - сперва определяем обработчики событий, а потом стартуем загрузку.

Вот так попробуйте, если нет доступа к загружаемой swf-ке:
Код AS1/AS2:

var container:MovieClip = createEmptyMovieClip("container", 1);
var mclListener:Object = new Object();
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(mclListener);
 
mclListener.onLoadStart = function(target_mc:MovieClip) {
        target_mc.stop();
}
 
 
mclListener.onLoadInit = function(target_mc:MovieClip) {
        target_mc.play();
}
 
mclListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void {
  _root.pole1.text=(int(bytesLoaded/bytesTotal*100) + " %");
}
 
mcLoader.loadClip("clip.swf", container);


Korobok 30.09.2010 11:00

Спасибо большое, работает.
Причем, я вроде бы уже пробовал использовать target_mc.stop(), может быть не работало как раз из-за определения обработчиков уже после загрузки.

etc 30.09.2010 11:19

Название темы не отражает сути вопроса.


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

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