![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2007
Сообщений: 36
|
Есть такой класс, который прилинкован к МувеКлипу
import mx.utils.Delegate;
class class_card_tovar extends MovieClip{
private var __listenerObject:Object;
private var __mcl:MovieClipLoader;
function onPress() {
ImageLoader("1.jpg");
}
public function ImageLoader(image:String) {
__mcl = new MovieClipLoader();
__listenerObject = new Object();
__listenerObject.onLoadComplete = Delegate.create (this, this.ImageLoader_onLoadComplete)
__listenerObject.onLoadProgress = Delegate.create (this, this.ImageLoader_onLoadProgress)
__mcl.addListener(__listenerObject);
__mcl.loadClip(image, this.createEmptyMovieClip("pic_mc"+id, this.getNextHighestDepth()));
}
private function ImageLoader_onLoadComplete ():Void {
trace ('com');
preloader._visible = false;
}
private function ImageLoader_onLoadProgress (loadedBytes:Number, totalBytes:Number):Void {
trace ('com2' + totalBytes);
}
Создаю так Проблема в том что из на экране должно быть много и каждый должен загрузить в СЕБЯ картинку, а при этом коде грузятся только в первый созданный клип Последний раз редактировалось iNils; 02.09.2007 в 22:47. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Кавычки забыли.
for (var i = 0; i < 3; i++) {
attachMovie ("form_card_tovar", "tovar" + i, this.getNextHighestDepth (), {id:i, _x:i * 200 + 10});
}
1. Имя класса пишут с большой буквы, функции - с маленькой. А у вас все наоборот. 2. Писать в имени класса слово class, это масло масленное. 3. Создавать для MovieClipLoader отдельный __listenerObject совсем необязательно, подписать можно и сам клип __mcl.addListener(this), тогда и Delegate не нужен с __listenerObject.onLoadComplete не нужен. |
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
import mx.utils.Delegate;
class class_card_tovar extends MovieClip{
private var __listenerObject:Object;
private var __mcl:MovieClipLoader;
private var __picsNum:Number = 2; //Колличество картинок
private var __curPic:Number = 1;
private var flag:Boolean = false;
function onPress() {
ImageLoader("1.jpg");
}
public function ImageLoader(image:String) {
__mcl = new MovieClipLoader();
__listenerObject = new Object();
if (!flag){
__listenerObject.onLoadComplete = Delegate.create (this, this.ImageLoader_onLoadComplete);
__listenerObject.onLoadProgress = Delegate.create (this, this.ImageLoader_onLoadProgress);
__mcl.addListener(__listenerObject);
flag = true;
}
__mcl.loadClip(image, this.createEmptyMovieClip("pic" + __curPic+ "_mc", this.getNextHighestDepth()));
}
private function ImageLoader_onLoadComplete ():Void {
trace ('com');
preloader._visible = false;
if (__curPic != picNum){
__curPic ++;
ImageLoader (__curPic.toString + ".jpg");
}
}
private function ImageLoader_onLoadProgress (loadedBytes:Number, totalBytes:Number):Void {
trace ('com2' + totalBytes);
}
}
Главный класс управляет месторасположением картинок: /**
* @author Screamge
* @date Sep 3, 2007
*/
import mx.utils.Delegate;
import datas.Loader;
class datas.Main extends MovieClip {
private static var maxLength:Number = 5;
private var i:Number;
private function Main() {
//private constructor
};
function onPress (Void):Void {
for (i = 0; i <= Main.maxLength; i++){
attachMovie("form_card_tovar", "tovar" + String (i) + "_mc", this.getNextHighestDepth(), {_x:i*100 + 10, _y:i*100 + 10});
var loader:Loader = new Loader (this['tovar' + String (i) + '_mc'], i);
}
}
}
import mx.utils.Delegate;
class datas.Loader extends MovieClip{
private var __this:MovieClip;
private var __listenerObject:Object;
private var __mcl:MovieClipLoader;
public function Loader (_this:MovieClip, num:Number){
trace ('loader' + num);
__this = _this;
__mcl = new MovieClipLoader();
__listenerObject = new Object();
__listenerObject.onLoadComplete = Delegate.create (this, this.ImageLoader_onLoadComplete);
__listenerObject.onLoadProgress = Delegate.create (this, this.ImageLoader_onLoadProgress);
__mcl.addListener(__listenerObject);
ImageLoader(String (num) + '.jpg');
}
private function ImageLoader(image:String):Void {
__mcl.loadClip(image, __this, 1);
}
private function ImageLoader_onLoadComplete ():Void {
trace ('com');
//preloader._visible = false;
}
private function ImageLoader_onLoadProgress (loadedBytes:Number, totalBytes:Number):Void {
trace ('com2' + totalBytes);
}
}
|
|
|||||
|
Регистрация: Feb 2007
Сообщений: 264
|
class datas.Loader extends MovieClip {
private var __this:MovieClip;
private var __mcl:MovieClipLoader;
public function Loader(_this:MovieClip, num:Number) {
trace('loader'+num);
__this = _this;
__mcl = new MovieClipLoader();
__mcl.addListener(this);
ImageLoader(String(num)+'.jpg');
}
private function ImageLoader(image:String):Void {
__mcl.loadClip(image, __this, 1);
}
private function onLoadComplete():Void {
trace('com');
//preloader._visible = false;
}
private function onLoadProgress(loadedBytes:Number, totalBytes:Number):Void {
trace('com2'+totalBytes);
}
}
|
![]() |
![]() |
Часовой пояс GMT +4, время: 20:12. |
|
|
« Предыдущая тема | Следующая тема » |
|
|