Показать сообщение отдельно
Старый 17.08.2013, 21:31
scnippers вне форума Посмотреть профиль Отправить личное сообщение для scnippers Найти все сообщения от scnippers
  № 1  
Ответить с цитированием
scnippers
 
Аватар для scnippers

Регистрация: Jul 2013
Сообщений: 21
По умолчанию Не работает прелоадер

У меня есть основной flash файл который нужно подгрузить из другого falsh файла (прелоадера). Загружаю с помощью loader добавляю addchild'ом и мне выдает ошибку
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at Main()
другие флешки он подгружает отлично но которую мне надо не грузит. Собсно ошибка в конкретной флешке в Main как я понимаю.
вот main
Код AS3:
...
public function Main() 
		{
			if (stage)
                init();
            else
                addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			VK.api('users.get',{fields:"photo_100,sex"},getProfile,ErrorProfile);
		}
...
и сам прелоадер
Код AS3:
package  {
 
	import flash.display.MovieClip;
	import flash.net.URLRequest;
	import flash.display.Loader;
	import flash.events.*;
	import flash.errors.IOError;
 
	public class Logo extends MovieClip {
 
		var req:URLRequest = new URLRequest("squary.swf");
		var loader:Loader = new Loader();
		var im:Img = new Img();
		var prog:Prog = new Prog();
		public function Logo() {
			addEventListener(Event.ADDED_TO_STAGE, init);
		}
		private function init(e:Event):void
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			addChild(im);
			addChild(prog);
			prog.x = 39;
			prog.y = 540;
			loadSwf();
		}
		private function loadSwf():void
		{
			loader.load(req);
 
			loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressLoader);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, progressComplete);
			loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onError);
		}
		private function onError(e:IOErrorEvent):void
		{
			trace(e.errorID);
		}
		private function progressLoader(e:ProgressEvent):void
		{
			trace(e.target.bytesLoaded/1024/1024+' mb');
			prog.scaleX = (e.target.bytesLoaded/e.target.bytesTotal);
 
		}
		private function progressComplete(e:Event):void
		{
			trace("ok");
			addChild(e.target.content);
		}
	}
 
}
что за беда как ее решить?

Добавлено через 30 часов 17 минут
неужели ни кто не знает что делать?