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

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

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

Регистрация: Aug 2007
Сообщений: 124
Cool как используя LoadClip последовательно загрузить 4 клипа

Всем доброго времени суток. Вопрос, как красиво написадь код, для loadClip для 4х клипов. Я это сделал так
Код:
var mclListener:Object = new Object();

mclListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number)
{
	var percentDone:Number = bytesLoaded / bytesTotal * 100;
	progressMovie.percentDoneLabel.text = String(Math.ceil(percentDone))+ " %";
};

var image_mcl:MovieClipLoader = new MovieClipLoader();

mclListener.onLoadComplete = function(target_mc:MovieClip)
{
	mclListener.onLoadComplete = function(target_mc:MovieClip)
	{
		mclListener.onLoadComplete = function(target_mc:MovieClip)
		{
			mclListener.onLoadComplete = function(target_mc:MovieClip)
				{
					gotoAndPlay("start");
					backMusic.start();
				};
			image_mcl.loadClip("slideShowPic/image4.jpg",slideClip04);
			progressMovie.partitionText.text = "Loading Music";
			progressMovie.almostDone.text = "Almost Done";
		};
		image_mcl.loadClip("slideShowPic/image3.jpg",slideClip03);
		progressMovie.partitionText.text = "Loading Buttons";
		progressMovie.almostDone.text = "";
	};
	image_mcl.loadClip("slideShowPic/image2.jpg",slideClip02);
	progressMovie.partitionText.text = "Loading Pictures";
	progressMovie.almostDone.text = "";
};
image_mcl.loadClip("slideShowPic/image1.jpg",slideClip01);
progressMovie.partitionText.text = "Initialization";
progressMovie.almostDone.text = "";

image_mcl.addListener(mclListener);
По сути дела я вложил один слушатель в другой, и по мере выполнения onLoadComplete, идет загрузка другова клипа. Но уж больно все это неэстетично смотрится. А как можно это написать красиво?


Последний раз редактировалось solo19770701; 18.07.2008 в 00:11. Причина: редактирование
Старый 18.07.2008, 12:04
crazyone вне форума Посмотреть профиль Отправить личное сообщение для crazyone Найти все сообщения от crazyone
  № 2  
Ответить с цитированием
crazyone
 
Аватар для crazyone

блогер
Регистрация: Nov 2007
Адрес: Киев
Сообщений: 557
Записей в блоге: 2
Создать массив, в котором будет храниться информация - куда и откуда загружать каждый клип. При загрузке увеличивать счетчик и загружать следующий клип.

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

Регистрация: May 2008
Сообщений: 476
А зачем, позвольте узнать, Вам понадобилось столько вложенных обработчиков onLoadComplete?!
Вот недавно созданный пример последовательной загрузки изображений. Как только разберетесь в коде сможете подстроить его под свои нужды.
__________________
Случайность, господа, это знаете ли непознанная необходимость.


Последний раз редактировалось Alex_beginner; 18.07.2008 в 13:40.
Старый 18.07.2008, 14:31
джонатан вне форума Посмотреть профиль Отправить личное сообщение для джонатан Найти все сообщения от джонатан
  № 4  
Ответить с цитированием
джонатан
 
Аватар для джонатан

Регистрация: Jan 2007
Адрес: Минск
Сообщений: 781
Отправить сообщение для джонатан с помощью Skype™
Блин! Я вот тоже самое сейчас делаю, и уже не первый час сижу и думаю как осуществить следующее:

У меня циклически аттатчатся клипы, а в них уже MovieClipLoader тянет картинку. Но мне нужны в отдельном месте маленькие превьюшеычки. Я стал циклически дублировать мувиклипы аттатчившиеся, но тогда перестает работать прелоадер, т.к. имена чтоли одинаковые. Блин, короче сам запутался я в своем коде. Ужас...
__________________
Убейте меня!

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

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

Старый 18.07.2008, 23:42
solo19770701 вне форума Посмотреть профиль Отправить личное сообщение для solo19770701 Найти все сообщения от solo19770701
  № 6  
Ответить с цитированием
solo19770701

Регистрация: Aug 2007
Сообщений: 124
to lex_beginner: СПАСИБО. Твой код легок для понимания. Его я и использовал, только добавил onLoadProgress.
to iNils: ваш код сложнее для осовения (из-за сокращений), но есть плюс, там есть onLoadError. Спасибо.

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

Регистрация: May 2008
Сообщений: 476
Код iNils'a имеет главное преимущество перед моим кодом - отсутсвует onEnterFrame. После недолгих раздумий я пришел к выводу, что мой код тоже можно модифицировать и, разумеется, избавиться от onEnterFrame (см. вложение).
__________________
Случайность, господа, это знаете ли непознанная необходимость.

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

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

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


 


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


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