PDA

Просмотр полной версии : Проблема с изменением размера мува


gl0om
12.09.2005, 13:27
код

if (!imageCreated)
{
imageCreated=true;
_global.maxDepth++;
createEmptyMovieClip("img",_global.maxDepth);
img.loadMovie(img_imageURL_toOpen)
img._alpha=0;
}

if (img.getBytesLoaded()==img.getBytesTotal())
{
img._width=100;
img._height=100;
//увеличиваем alpha
}


проблема такая: если не изменять размеры img, то картинка будет видна, а если написать что угодно типа =100, *=2 - то размерам будет присваиваться значение "0". ПОЧЕМУ? :eek:

7thsky™
12.09.2005, 13:56
ты перед тем как увеличиваешь размеры, протрейси getBytesLoaded () getBytesTotal ()

gl0om
12.09.2005, 14:04
я протрейсил значение _width и _height после загрузки картики, сначала они раза 3 трейсились как "0", ну добавил условие if (_width!=0 && _height!=0) и все заработало вроде как...

из-за чего такая ерунда случается с переменными?
не пойму почему внутри условия (загруженных байтов == байтов всего) ширина и высота картики=0. Мистика какаято

7thsky™
12.09.2005, 14:36
потому что загрузка и удаление не происходят мгновенно

ты дал команду на загрузку мува, но это не значит что сразу флэш сразу получает кол-во загруженных байтов и сколько нужно загрузить

сначала это 0, 0, пока от сервера не получит размер файла.

потом удаление мува... вообщем все это фича :)

gl0om
13.09.2005, 01:40
А что за удаление мува? или это как дополнительная информация к теме? или я не знаком с алгоритмом загрузки мувиков (сначала там что-то грузится, потом удаляется...)?

Iv
13.09.2005, 04:58
если плотно вбиваться в тему, то там происходит следующее:
сначала в мувике создается одноименный мувик, потом сам
мувик заменяется на тот, что внутри него. во как.
но в общем это если уж очень раскопать.
на поверхности же происходит следующее:
кадр 1:
команда на загрузку в mc. еще не началась выполняться.
если протрейсить mc.getBytesLoaded и mc.getBytesTotal,
то обнаружим, что мувиклип mc, даже пустой имеет вес.
кадр 2:
прошла команда на загрузку, но данные с сервака еще не получены
если протрейсить mc.getBytesLoaded и mc.getBytesTotal,
то обнаружим, что и тот и другой равны -1.

кадр N:
пришли данные с сервака о размере загружаемого объекта
и получены первые байты этого объекта.
- дальше понятно.

gl0om
13.09.2005, 12:57
что-то как-то лихо закручено с одноименным мувиком... но вцелом вроде понятно. благодарю за информацию