PDA

Просмотр полной версии : loadMovie и Flash Player 6


ekeeper
12.12.2008, 16:33
Привет.

MovieClipLoader появился только в 7-ом плейере.

А пишется код на AS2 под 6-ой.

Как правильно обрабатывать загрузку swf извне?

Начал по наитию делать так:

_root._objects = 0;
_root.total_objects = 2;

this._Loader = function ()
{
trace("Опа, что-то загрузилось...");
_root._objects++;
if (_root._objects == _root.total_objects)
trace("Загрузка завершена");
}

var FirstPan:MovieClip = this.line.createEmptyMovieClip("mcPan1", 15);
FirstPan.onLoad = _root._Loader;
FirstPan.loadMovie("data/swf/backgrounds/1/global_front.swf");


так вот _Loader ни разу не вызывается.
Как там наши отцы делали в те времена?

iNils
12.12.2008, 16:41
Событие onLoad работает только для _root и для классов при аттаче объекта на сцену.
Поэтому на setInterval или onEnterFrame вешали проверку на число загруженных байт и если оно равнялось общему числу байт, при условии, что оно больше нуля (ведь размер файла нельзя получить мгновенно, поэтому нужно быть уверенным, что проверяем на нужно число), то это и был момент полной загрузки файла.

ekeeper
12.12.2008, 16:43
iNils: при этом, я так понимаю, есть шанс погрешности? Загрузиться может раньше или позже чем посчиталось в onEnterFrame. Но все равно спасибо. Ушел делать.

iNils
12.12.2008, 18:24
Позже не может, а раньше 100% загрузится, также как и в MovieClipLoader.