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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.04.2008, 13:42
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 1  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
По умолчанию События MovieClipLoader'а

Не понимаю почему событие onLoadComplete происходит раньше чем onLoadInit...

Код:
function recload(n:Number, cllist:Array):Void{
	var ml:MovieClipLoader = new MovieClipLoader();
	var ls:Object = new Object();
	ls.onLoadStart = function(){

		trace("start: "+n);
	}
	
	ls.onLoadInit = function(obj:MovieClip):Void{
		trace("init: "+n);
	};
	
	ls.onLoadComplete = function(obj:MovieClip):Void{
		trace("complete: "+n+' ,'+cllist.length);
		n++;
		if (n != cllist.length) {
			recload(n, cllist);
		} else {
			trace("all");
		}
	};
	ml.addListener(ls);
	ml.loadClip("******" + cllist[n], cload);
}

recload(0, [0, 1, 2, 3, 4, 5, 6]);
Результат трейса

Код:
start: 0
complete: 0 ,7
init: 1
start: 1
complete: 1 ,7
init: 2
start: 2
complete: 2 ,7
init: 3
start: 3
complete: 3 ,7
init: 4
start: 4
complete: 4 ,7
init: 5
start: 5
complete: 5 ,7
init: 6
start: 6
complete: 6 ,7
all
init: 7
Или понимаю?
onLoadInit происходит кагда ролик загружен и выполнил свой первый кадр? Или кагда он загрузил первый кадр...?

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
onLoadComplete - когда файл загружен
onLoadInit - когда загруженный файл проинициализирован
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 24.04.2008, 13:54
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 3  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
Да, понятно, а уже недели 2 думаю в чем же дело %). И только щас заметил что инит после комплита идет...

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

Регистрация: Sep 2006
Сообщений: 12
Отправить сообщение для alexsab с помощью ICQ
вопрос в тему,
а как можно обойти onLoadInit вообще, ну ненужно мне чтобы при предзагрузке swfки он еще и первый кадр ее проигрывал, возможно вообще такое?
или как после onLoadComplete сразу же удалить мувик!?
и вроде бы я вот сейчас могу сам ответить на свой вопрос
Код:
a_mc.loadClip_func = function(param_array) {
	var _clip = param_array[0]
	var _mc = param_array[1]
	var _func = param_array[2]
	
	var reel_mcl = new MovieClipLoader();
	var rls = new Object();
	
	//этот загрузчик у меня используеся как для предзагрузки,
	//так и для дальнейшего показа их в процесее,
	//_loader показывает все загружены или это и есть предзагрузка
	var _loader = a_mc.reelLoading != a_mc.reelCount ? true : false;
	
	rls.onLoadComplete = function(target_mc:MovieClip) {
		var loadProgress:Object = reel_mcl.getProgress(target_mc);
		if(_loader){
			a_mc.reelLoading++;
			removeMovieClip(target_mc)
			reel_mcl.removeListener(rls);
			a_mc[_func[0]](_func[1]);
		} else {
		}
	};
	if(!_loader){
		rls.onLoadInit = function(target_mc:MovieClip) {
				trace("Movie clip = "+target_mc+" is now initialized");
				a_mc[_func[0]](_func[1]);
			};
	}

	reel_mcl.addListener(rls);
	reel_mcl.loadClip(_clip, _mc)
}
//вызов функции загрузки
a_mc.loadClip_func(["url", __куда, ["функция_позле_загрузки", null]]);
и компилица, но! если просто скомпилить, то зависает, вызовается ошибка, и закрывается весь флеш!!!
а работает оно только под debug-ом.... и нигде ошибок не вызывает!!!...
а вот если не исключать onLoadInit, т.е.:
Код:
...
	rls.onLoadComplete = function(target_mc:MovieClip) {
		var loadProgress:Object = reel_mcl.getProgress(target_mc);
		if(_loader){
		} else {
		}
	};
	rls.onLoadInit = function(target_mc:MovieClip) {
		trace("Movie clip = "+target_mc+" is now initialized");
		a_mc.reelLoading++;
		a_mc[_func[0]](_func[1]);
	};
...
то все прекрасно работает!
почему!?

Старый 22.05.2008, 11:24
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 5  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
В смысле тебе ненужно чтобы первый кадр проигрывался onLoadInit Это иницилизация swf'ки т.е она готова к работе, до этого момента ты из нее никаких данных не можеш получить >_>, не логично...

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

Регистрация: Sep 2006
Сообщений: 12
Отправить сообщение для alexsab с помощью ICQ
ничего я не хачу ни от кого получить... все просто до безумия:
у меня есть главная флешка, которая грузит в себя все (xml, картинки и другие SWF файлы!), и все это происходит в preloader-е, так вот все хорошо, но первый кадр загруженых SWFок проигрывается!!! а мне это в прелоадере не нужно совсем... => выход, удалить загруженый мувик сразу после onLoadComplete
еще раз повторю, мне просто нужно чтобы в ПРЕДзагрузке SWF не проигрывали свой первый кадр!
в аттаче видео как это все происходит.......
Вложения
Тип файла: rar error4.rar (264.8 Кб, 61 просмотров)

Старый 22.05.2008, 14:16
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 7  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
Код:
onLoadStart = function(obj:MovieClip){
obj._visible = false;
}

Старый 22.05.2008, 15:06
alexsab вне форума Посмотреть профиль Отправить личное сообщение для alexsab Найти все сообщения от alexsab
  № 8  
Ответить с цитированием
alexsab

Регистрация: Sep 2006
Сообщений: 12
Отправить сообщение для alexsab с помощью ICQ
да я не скрыть его хачу....
даже если скроешь загруженый SWF файл, он всеравно первый фрейм свой проиграет....!
а то что в видео мигает, это я просто не отключил.... у меня он грузит все в контейнер за 30000 пикселей от главной сцены....
мне ненужно чтобы он КОД первого кадра выполнял, вот как!, а объекты, [удалено] пускай покаказывает...


Последний раз редактировалось alexcon314; 22.05.2008 в 17:14. Причина: самое главное
Старый 22.05.2008, 15:22
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 9  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
Так он его выполняет кагда происходит onLoadInit

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

Регистрация: Sep 2006
Сообщений: 12
Отправить сообщение для alexsab с помощью ICQ
onLoadInit выполняется после того как отъиграет первый кадр!
хелп флеша:
  • Как только весь загружаемый файл будет записан на диск вызывается MovieClipLoader.onLoadComplete.
  • После того как будут выполнены комманды первого фрейма загруженного файла, вызывается MovieClipLoader.onLoadInit.
и трейс это подтверждает...
а если удалить мувик после onLoadComplete, то собств и первый кадр не проигрывается и onLoadInit не нужно вообще, но это вызывает ошибку при компиляции...


Последний раз редактировалось alexsab; 22.05.2008 в 18:18. Причина: Правила форума. п.1
Создать новую тему Ответ Часовой пояс GMT +4, время: 02:15.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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