Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.04.2009, 16:16
Сашокк вне форума Посмотреть профиль Отправить личное сообщение для Сашокк Найти все сообщения от Сашокк
  № 1  
Ответить с цитированием
Сашокк

Регистрация: Apr 2006
Сообщений: 30
По умолчанию прелодер

Дело такое - зделал простой прелодер preloader.swf
Код AS3:
var ldr:Loader=new Loader();
ldr.load(new URLRequest("GetMyFoto.swf")); 
ldr.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,loading);
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE,done);
	var wid:Number=0;
 
function loading(evt:ProgressEvent) {
	var percents:Number= evt.bytesLoaded/evt.bytesTotal;
	wid=Math.ceil(percents*100);
	graphics.beginFill(0Xffff00); // рисуем 
	graphics.drawRect(150,200,wid*2,10);
}
 
function done(evt:Event) {
	graphics.clear();  //Чистим
	removeChildAt(0);
	addChild(ldr); //Загружаем фотку
}
,
загружал в него GetMyFoto.swf
Код AS3:
var glow:GlowFilter;
glow = new GlowFilter(
		0x000000,
		1,
		6,
		40,
		2,
		BitmapFilterQuality.LOW,
		true,
		false);
 
var imgReq:URLRequest=new URLRequest("smallFlower.jpeg");
var bigReq:URLRequest=new URLRequest("flower.jpg");
var ldr:Loader=new Loader();
var a:Number=new Number(0);
ldr.load(imgReq);
var spr:Sprite=new Sprite();
 
spr.addChild(ldr);
addChild(spr);
 
	spr.filters = [glow];
 
spr.x=stage.stageWidth/2-25;
spr.y=stage.stageHeight/2-25;
 
function over(evt:MouseEvent) {
	spr.filters = [];
}
 
function out(evt:MouseEvent) {
	spr.filters = [glow];
}
function gotoframe(event:MouseEvent) {
	if(a==0) { 
	ldr.load(bigReq);
	spr.x=0;
	spr.y=0;
	a=1;
	return;
	}
	if(a==1) {
		spr.x=stage.stageWidth/2-25;
		spr.y=stage.stageHeight/2-25;
		ldr.load(imgReq);
		a=0;
		return;
	}
}
addEventListener(MouseEvent.CLICK,gotoframe);
spr.addEventListener(MouseEvent.ROLL_OVER,over);
spr.addEventListener(MouseEvent.ROLL_OUT,out);
stop();
И при запуске GetMyFoto.swf выдаёт TypeError: Error #1009: Cannot access a property or method of a null object reference.
at GetMyFoto_fla::MainTimeline/frame1()
и не фунциклирует GetMyFoto.swf как следует.

Мне интуиция подсказывает что тут конфликтуют лоадеры, но как исправить ума не приложу.
Вложения
Тип файла: rar Stuff.rar (3.7 Кб, 41 просмотров)

Старый 29.04.2009, 16:19
Сашокк вне форума Посмотреть профиль Отправить личное сообщение для Сашокк Найти все сообщения от Сашокк
  № 2  
Ответить с цитированием
Сашокк

Регистрация: Apr 2006
Сообщений: 30
забыл картинки
Вложения
Тип файла: rar Stuff.rar (126.7 Кб, 33 просмотров)

Старый 29.04.2009, 16:20
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 3  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
А вы прочитали сам текст ошибки "Cannot access a property or method of a null object reference"?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 29.04.2009, 16:37
Сашокк вне форума Посмотреть профиль Отправить личное сообщение для Сашокк Найти все сообщения от Сашокк
  № 4  
Ответить с цитированием
Сашокк

Регистрация: Apr 2006
Сообщений: 30
Кажется лоадер что в GetMyFoto не загружает файл. Но почему? И как сделать чтоб загружал?

Старый 29.04.2009, 17:09
AlexDesinger вне форума Посмотреть профиль Отправить личное сообщение для AlexDesinger Посетить домашнюю страницу AlexDesinger Найти все сообщения от AlexDesinger
  № 5  
Ответить с цитированием
AlexDesinger

Регистрация: Feb 2007
Сообщений: 563
Подождите, а вы что код в таймлайне пишете?

Старый 29.04.2009, 22:36
Сашокк вне форума Посмотреть профиль Отправить личное сообщение для Сашокк Найти все сообщения от Сашокк
  № 6  
Ответить с цитированием
Сашокк

Регистрация: Apr 2006
Сообщений: 30
Цитата:
Сообщение от AlexDesinger Посмотреть сообщение
Подождите, а вы что код в таймлайне пишете?
пока только учусь, привыкну писать в as файлах.

проблему нашёл,она в GetMyFoto, но не понимаю почему это происходит именно там:
Код AS3:
spr.x=stage.stageWidth/2-25;
spr.y=stage.stageHeight/2-25;
это изначальное уравнение, вне функции.Причём когда я вызываю то же самое в функции а это коментирую, всё в порядке. Почемуто stage приравнивает к Null, кажется.
Объясните пожалуйста в чём дело?

Старый 30.04.2009, 12:30
SunShadow вне форума Посмотреть профиль Отправить личное сообщение для SunShadow Найти все сообщения от SunShadow
  № 7  
Ответить с цитированием
SunShadow
 
Аватар для SunShadow

Регистрация: Apr 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 355
когда вы запускаете GetMyFoto в плеере непосредственно stage уже будет определена перед выполнением кода в первом фрейме (ну или где он у вас заведен). Когда вы подгружаете флэшку извне, то для загруженной swf значение stage будет установлено только когда вы добавите ее в список отображения. Ловите событие Event.ADDED_TO_STAGE и тогда уже запускайте свой код.
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ

Старый 30.04.2009, 22:33
Сашокк вне форума Посмотреть профиль Отправить личное сообщение для Сашокк Найти все сообщения от Сашокк
  № 8  
Ответить с цитированием
Сашокк

Регистрация: Apr 2006
Сообщений: 30
Ясно, спасибо большое

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 21:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.