Просмотр полной версии : Выгрузка клипа
Можно ли как-нтбудь отследить выгрузку клипа,и после в тот же клип контейнер загрузить другой клип.Вот код:import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.display.BitmapData;
import flash.geom.*;//импорт нужных классов
play_mc.useHandCursor = false;//отменяем руку на мышаре
var my_mcl:MovieClipLoader = new MovieClipLoader();
my_mcl.loadClip("1.jpg", cont_mc);
play_mc.onPress = function(){//начинаем издеваться
cont_mc.varTween2 = new Tween(cont_mc, "_xscale", Regular.easeOut, cont_mc._xscale, 200, 1, true);
cont_mc.varTween1 = new Tween(cont_mc, "_yscale", Regular.easeOut, cont_mc._yscale, 200, 1, true);
cont_mc.varTween = new Tween(cont_mc, "_alpha", Regular.easeOut, cont_mc._alpha, 0, 1, true);
cont_mc.varTween.onMotionFinished = function() {
my_mcl.unloadClip("1.jpg", cont_mc);
};
}
Следующею картинку удается загрузить только в другой клип контейнер,а картинок много,можно ли в один все это загружать?
chingachgoog
17.06.2008, 15:00
А что в конечном итоге надо?
Если просто грузить по-очереди клипы (картинки) в контейнер, то и не надо выгружать - сразу, как требуется, в этот контейнер грузить следующую порцию (предыдущий сам выгрузится).
Да,именно это и надо,но так не грузиться.
chingachgoog
17.06.2008, 21:46
А где это видно?
import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.display.BitmapData;
import flash.geom.*;//импорт нужных классов
play_mc.useHandCursor = false;//отменяем руку на мышаре
function loadClip(){
var my_mcl:MovieClipLoader = new MovieClipLoader();
my_mcl.loadClip("1.jpg", cont_mc);
}
play_mc.onPress = function(){//начинаем издеваться
cont_mc.varTween2 = new Tween(cont_mc, "_xscale", Regular.easeOut, cont_mc._xscale, 200, 1, true);
cont_mc.varTween1 = new Tween(cont_mc, "_yscale", Regular.easeOut, cont_mc._yscale, 200, 1, true);
cont_mc.varTween = new Tween(cont_mc, "_alpha", Regular.easeOut, cont_mc._alpha, 0, 1, true);
cont_mc.varTween.onMotionFinished = function() {
my_mcl.unloadClip("1.jpg", cont_mc);
loadClip() // сразу работать не будет нужно поколдовать с областями видимости итп};
}
А вообще используйте событие мувклиплоадера onInit или onComplite, а то не понятно когда издевательства стоит начинать)
Это имеется ввиду_visible = true, _visible = false ??
Это имеется ввиду_visible = true, _visible = false ??
Нет))
я имел ввиду видимость вызываемой функции loadClip()
я ведь не знаю из какого контекста был вырван код.
есле код из класса то одно, если из мувклипа то другое. вот, может быть, работающий пример для рута:
//все в руте:
import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.display.BitmapData;
import flash.geom.*;//импорт нужных классов
play_mc.useHandCursor = false;//отменяем руку на мышаре
_root.loadClip = function(){// хотя,если функция описывается в руте, можно опустить
var my_mcl:MovieClipLoader = new MovieClipLoader();
my_mcl.loadClip("1.jpg", _root.cont_mc); // здесь наверное надо как-то менять урл
}
play_mc.onPress = function(){//начинаем издеваться
cont_mc.varTween2 = new Tween(cont_mc, "_xscale", Regular.easeOut, cont_mc._xscale, 200, 1, true);
cont_mc.varTween1 = new Tween(cont_mc, "_yscale", Regular.easeOut, cont_mc._yscale, 200, 1, true);
cont_mc.varTween = new Tween(cont_mc, "_alpha", Regular.easeOut, cont_mc._alpha, 0, 1, true);
cont_mc.varTween.onMotionFinished = function() {
_root.my_mcl.unloadClip("1.jpg", cont_mc);
_root.loadClip()
};
}
А вообще проще сделать класс делегировать на него все эвенты и управлять счетчиком картинок
класс Такойта {
..
var счетчик;
var контейнер:MovieClip;
конструктор{
счетчик =0 // ну или чему-там надо
}
функция загрузкиКартинки(счетчик) {
создать мувклиплоадер;
назначить (делегировать) обработчик окончания загрузки картики функции аКогдаКартинкаЗагрузилась;
мувклиплоадером загрузить в контейнер картинку по адресу счетчик +".jpg". //ну или окуда берется.. лучше из XML
}
..
..
функция аКогдаКартинкаЗагрузилась(клипик) {
здесь что творим при помощи твинов с аргументом функции (клипик)
для слежения за окончанием издевательства делегируем функцию аКогдаЧертовыТвиныЗакончились.
}
..
функция аКогдаЧертовыТвиныЗакончились() {
счетчик++;
загрузкиКартинки(счетчик);
}
..
}
Пример на Нерусском языку во вложении.. а вообще походу все грузится, просто если грузить в тот же клип. альфа остается нулевой..
Котяра огромное спасибо,иду разбираться
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.