Показать сообщение отдельно
Старый 15.09.2007, 13:56
screamge вне форума Посмотреть профиль Отправить личное сообщение для screamge Посетить домашнюю страницу screamge Найти все сообщения от screamge
  № 1  
Ответить с цитированием
screamge
Ветеран форума
 
Аватар для screamge

Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
По умолчанию Интересное поведение после загрузке свф файла с подключённым классом

Пишем класс:

Код:
import flash.display.BitmapData;

class TestClass extends MovieClip {
	public function TestClass (){
		trace ('class2');
		var mc:MovieClip = this.createEmptyMovieClip("mc_1", 1);
    	var mc:MovieClip = this.createEmptyMovieClip("mc_1", 1);
    	mc.beginFill(0x00CC00);
    	mc.lineTo(0, 50);
    	mc.lineTo(40, 50);
    	mc.lineTo(40, 0);
    	mc.lineTo(0, 0);
	}
}
В linkage мувиклипа прописываем его, далее компилим. Обзываем полученный свф файл "empty1";

далее видоизменяем класс:
Код:
import flash.display.BitmapData;

class TestClass extends MovieClip {
	public function TestClass (){
		trace ('class2');
		var mc:MovieClip = this.createEmptyMovieClip("mc_1", 1);
    	var mc:MovieClip = this.createEmptyMovieClip("mc_1", 1);
    	mc.beginFill(0xCC3300);
    	mc.lineTo(0, 50);
    	mc.lineTo(40, 50);
    	mc.lineTo(40, 0);
    	mc.lineTo(0, 0);
	}
}
прописываем его в linkage другого мувиклипа другого документа, компилим. Обзываем "empty2";


Имеем два свф файла, тыкаем на "empty1" получаем прямоугольник одного цвета, тыкаем на "empty2" получаем прямоугольник другого цвета.

Теперь самое интересное, загружаем в общий документ сначало один свф потом при желании пытаемся загрузить второй свф.

Код:
import mx.utils.Delegate;

var mcloader:MovieClipLoader = new MovieClipLoader ();



this.btn1_mc.onRelease = Delegate.create (this, this.load1);
this.btn2_mc.onRelease = Delegate.create (this, this.load2);

_root.createEmptyMovieClip('content_mc', 1);


function load1 ():Void {
	trace ('1');
	mcloader.loadClip('empty1.swf', this.content_mc);
}

function load2 ():Void {
	trace ('2');
	mcloader.loadClip('empty2.swf', this.content_mc);
}
Результат:
Если сначало был загружен первый то при попытке загрузит свф номер два грузится снова первый, если сначало загружаем второй то следовательно при попытке вызвать свф намба ван опять загружается намба ту.

Кто-нибудь объясните почему так происходит, не одно моё соображение не подаётся никакой логике.
Вложения
Тип файла: rar exmpl.rar (2.0 Кб, 70 просмотров)
__________________
Free-lance | Twitter | Me