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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.10.2007, 21:57
BigDan вне форума Посмотреть профиль Отправить личное сообщение для BigDan Найти все сообщения от BigDan
  № 11  
Ответить с цитированием
BigDan
 
Аватар для BigDan

Регистрация: Apr 2006
Адрес: Kiev
Сообщений: 1,675
Отправить сообщение для BigDan с помощью ICQ
MovieClipLoader.getProgress()

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

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
Значит посмотрите ещё раз.

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

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Файлы грузятся по очереди, теоретически можно начать грузить файл, получить его размер, бросить и начать грузить следующий, а потом все по -новой, но это ж тоска зеленая и не факт что сработает. Работающая схема:
xml
Код:
<?xml version="1.0" encoding="utf-8"?><files>
<file id="main" src="main.swf" size="294311" depth="10"/>
<file id='mover' src='mover.swf' size="1234" depth="2000000" />
<file id='tracer' src='tracer.swf' size="999" depth="2000001" />
</files>
Размер файла выдается на сервере через php filеsize (вроде бы). Или забивается вручную, можно от балды (в этом случае индикатор загрузки будет двигаться то быстрее, то медленнее чем надо, типа коннект неровный)
Затем xml обрабатывается, значения суммируются и получается общий размер всех файлов. Далее размер каждого файла делим на общую сумму и получаем долю файла в общем весе файлов.
Далее грузим каждый файл по очереди, делим реально загруженное на реальный размер файла и умножаем на заявленную долю.
Вот кусок кода, выдран из класса, работать ессно не будет, только как иллюстрация:
Код:
private static function loadAll():Void{
	var fakeTotal:Number = 0;
	loadedK = 0;
	var i:Number = 0;
	numLoaded = 0;
	numLoad = loadArr.length;
	if(numLoad > 0){
		loader.percent = 0;
		for( i = 0; i< loadArr.length; i++)fakeTotal += loadArr[i].size;
		for( i = 0; i< loadArr.length; i++)loadArr[i].k = loadArr[i].size / fakeTotal;
	}
	loadNext();
}
private static function loadNext():Void{
	if(!loadArr.length){
		onLoadEnd();
		return;
	}
	var o:Object = loadArr.pop();
	currK = o.k;
	mcl.loadClip( o.src, o.tgt );	
}
private static function onLoadInit( mc:MovieClip ){
	loadedK += currK;
	loadNext();
}
private static function onLoadProgress( mc:MovieClip, loadedBytes:Number, totalBytes:Number ){
	var n:Number = currK * loadedBytes/(totalBytes || 1000000) + loadedK;
	loader.percent =  n;
}
Плюс схемы - не дает ошибки даже при неверно указанном размере файлов, потому что сумма всех долей - 1.


Последний раз редактировалось Kikasso; 09.10.2007 в 22:45.
Создать новую тему Ответ Часовой пояс GMT +4, время: 07:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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