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

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

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

Регистрация: Nov 2010
Сообщений: 12
Question Проблемы с прелодером

Пишу на AS3 совсем недавно. Нужен совет по загрузчику.
Пытался сделать внешний загрузчик. Ниже приведен код в первом кадре.

Код AS3:
stop();
 
import flash.net.URLRequest;
import flash.display.Loader;
import flash.events.Event;
import flash.events.ProgressEvent;
 
var loader:Loader = new Loader();
var request:URLRequest = new URLRequest("HA.swf");
 
Preloader();
 
function Preloader() {			
	loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadCompleteHandler, false, 0, true );
	loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, updatePreloader, false, 0, true );
	loader.load(request);
}
 
function updatePreloader(e:ProgressEvent) {
	var percent:int = e.bytesLoaded / e.bytesTotal * 100;
	trace(percent);
}
function loadCompleteHandler(loadEvent:Event) {
	addChild(loadEvent.currentTarget.content);
	gotoAndStop(2);
}
Трейсится процент загрузки нормально, но после 100% сразу выскакивает ошибка:

Код:
VerifyError: Error #1014: Class с_human could not be found.
Пробовал писать код прелодера и в документ-классе, но выдает ту же ошибку.
Класс, на который ссылается ошибка, линкуется в библиотеке главной флешки, которую я хочу подгрузить.

Главная флешка сама по себе компилится и работает нормально.

p.s. извиняюсь за оформление, не разобрался как выделить код =(


Последний раз редактировалось iNils; 29.11.2010 в 15:38.
Старый 29.11.2010, 15:38
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
p.s. извиняюсь за оформление, не разобрался как выделить код
Для оформления своего кода надо использовать теги [code][/code]
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 29.11.2010, 17:18
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 3  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
1. Не пишите в кадрах.
2. Это
Код AS3:
gotoAndStop(2);
лишнее, достаточно убрать из списка отображения ваш прогресс-бар.
3. Пролоадер к данной ошибке отношения не имеет.

Старый 29.11.2010, 17:21
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Похоже, что первый кадр HA.swf с конструктором загрузился и исполнился, А классы, импортированные в последующие его кадры не успели загрузится.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.11.2010, 18:27
Achiles вне форума Посмотреть профиль Отправить личное сообщение для Achiles Найти все сообщения от Achiles
  № 5  
Ответить с цитированием
Achiles

Регистрация: Nov 2010
Сообщений: 12
1. Пробовал документ-классом делать прелодер - та же проблема.
2. gotoAndStop(2) забыл стереть перед тем как на форум выкладывать, это уже пробовал все подряд =)
3. Возможно, но что это тогда может быть ..

Цитата:
Сообщение от dimarik Посмотреть сообщение
Похоже, что первый кадр HA.swf с конструктором загрузился и исполнился, А классы, импортированные в последующие его кадры не успели загрузится.
У меня классы все экспортируются в первом фрейме (для всех стоит галочка в линкейдже в библиотеке)..
Или я что-то не так понимаю ?
А в подгружаемой флешке для документ класса написано так, вроде должно же все успеть загрузиться...

Код:
	public class CMain extends MovieClip
	{
		public function CMain()
		{
			if ( stage ) Init();
			else this.addEventListener( Event.ADDED_TO_STAGE, OnLoadComplete );
		}
		
		private function OnLoadComplete( e:Event )
		{
			Init();
		}


Последний раз редактировалось Achiles; 29.11.2010 в 18:29.
Старый 29.11.2010, 18:49
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 6  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Как вариант.
Ну так загрузился первый кадр, исполнился OnLoadComplete. Кстати, очень неудачное название хендлера, скорее уж onAddedToStage. Ага! И где-то в недрах вызовов потребовался класс с_human, а его нет - он еще загружается. Проверьте номер кадра для экспорта.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.11.2010, 19:27
Achiles вне форума Посмотреть профиль Отправить личное сообщение для Achiles Найти все сообщения от Achiles
  № 7  
Ответить с цитированием
Achiles

Регистрация: Nov 2010
Сообщений: 12
Цитата:
Сообщение от dimarik Посмотреть сообщение
Как вариант.
Ну так загрузился первый кадр, исполнился OnLoadComplete. Кстати, очень неудачное название хендлера, скорее уж onAddedToStage. Ага! И где-то в недрах вызовов потребовался класс с_human, а его нет - он еще загружается. Проверьте номер кадра для экспорта.
не понимаю, где мне проверять номер кадра для экспорта ?
как я уже сказал в линкейдже для этого класса стоит галочка "export in first frame"
так же знаю в publish settings есть "export classes in frame", там тоже стоит 1

у меня там используется статический класс для общей сцены, может там какие-то хитрости с созданием статических классов?
если у меня все экспортируется в первом кадре, но при этом что-то не находит, то как проверить что полностью все-все загрузилось ? =)

Старый 29.11.2010, 18:56
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 8  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Цитата:
Возможно, но что это тогда может быть ..
Это был намек на то, что код прелоадера нам ничего не скажет.

Старый 29.11.2010, 19:52
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 9  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Цитата:
если у меня все экспортируется в первом кадре
Значит уже все загрузилось.
Цитата:
у меня там используется статический класс для общей сцены, может там какие-то хитрости с созданием статических классов?
Вы у нас спрашиваете? Откуда мы знаем, что вы там "нахитрили"?

Старый 29.11.2010, 20:10
Achiles вне форума Посмотреть профиль Отправить личное сообщение для Achiles Найти все сообщения от Achiles
  № 10  
Ответить с цитированием
Achiles

Регистрация: Nov 2010
Сообщений: 12
Цитата:
Сообщение от alatar Посмотреть сообщение
Вы у нас спрашиваете? Откуда мы знаем, что вы там "нахитрили"?
я там ничего не "хитрил", имелось ввиду порядок создания/загрузки классов, может какие-то особенности есть..

не находит только те классы, которые линкейджем в библиотеке экспортируются ..
если я закомментирую весь код, в котором используется не найденный класс, то выскакивает такой же эррор, но с сылкой уже на другой класс, который так же экспортируется из библиотеки ..

без прелодера все нормально загружается и работает

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

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

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


 


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


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