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

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

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

Регистрация: Dec 2012
Сообщений: 28
на сцене экземпляр UILoader под названием loadWindow. Загрузка происходит, когда пользователь выбирает элемент из расположенного на сцене компонента List, имя экземпляра которого loadList
___
ничего не происходит и не выдает, после завершения загрузки выходит окно вывода пустое и все(

Старый 21.03.2013, 20:05
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 12  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Я всё ещё не могу понять что не работает, скачал архив 6.rar нажимаю на кнопки загрузка идёт видно сколько чего загрузилось, и прогресс бар работает, может должно быть как-то по другому.
Миниатюры
Нажмите на изображение для увеличения
Название: simulateDownload.jpg
Просмотров: 62
Размер:	67.1 Кб
ID:	29304  
__________________
Гоночка

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

Регистрация: Dec 2012
Сообщений: 28
при этом должно с достижением 20-процентного увеличения загрузки происходить увеличение размеров динамического текста на сцене на значение=5 и так до 100

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

Регистрация: Nov 2010
Сообщений: 497
Так не бывает при загрузке точного значения "20%". И "40%" не бывает. Данные грузятся порциями и вся порция сразу приходит. Поэтому вполне может быть 10%, а затем сразу 50%. Каждый диапазон нужно вручную проверять. Т.е. если percentLoaded > 20 & percentLoaded < 40, установить scale в ..., иначе если ... и так далее. И, видимо, без всяких +=.

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

Регистрация: Dec 2012
Сообщений: 28
Код AS3:
function textProgress(e:ProgressEvent):void{
if ( 20 < loadWindow.percentLoaded  < 40) 
{info_txt.scaleX = 2; info_txt.scaleY = 2;} 
if ( 40 < loadWindow.percentLoaded < 60) 
{info_txt.scaleX = 3; info_txt.scaleY = 3;} 
if (60 < loadWindow.percentLoaded < 80)  
{info_txt.scaleX = 4; info_txt.scaleY = 4;}
if (80 < loadWindow.percentLoaded < 100)
{info_txt.scaleX = 5; info_txt.scaleY = 5;}
}
к сожалению нет эффекта.. динамический текст статичен..

Старый 21.03.2013, 21:08
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 16  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
так не заработает не так как вам надо
Код AS3:
if ( 20 < loadWindow.percentLoaded  < 40)
надо
Код AS3:
if (20<loadWindow.percentLoaded && loadWindow.percentLoaded<40)
__________________
Гоночка

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

Регистрация: Dec 2012
Сообщений: 28
все равно не получается..(

Старый 21.03.2013, 22:06
maxkar вне форума Посмотреть профиль Отправить личное сообщение для maxkar Найти все сообщения от maxkar
  № 18  
Ответить с цитированием
maxkar

Регистрация: Nov 2010
Сообщений: 497
Продолжаем ловить блох. textProgress подписан только на Event.COMPLETE. Наверное, надо все-таки на ProgressEvent.PROGRESS. Или из progressHandler вызывать textProgress.

Старый 21.03.2013, 22:15
Ksenya23 вне форума Посмотреть профиль Отправить личное сообщение для Ksenya23 Найти все сообщения от Ksenya23
  № 19  
Ответить с цитированием
Ksenya23

Регистрация: Dec 2012
Сообщений: 28
ни так ни сяк..не хочет работать, заколдованный текст

Старый 21.03.2013, 22:25
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 20  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Ksenya23, значит смотрите, я уже всё понял как надо делать у вас на 50 кадре вверху буква a, нажимаете на неё, затем нажимаете F9, теперь смотрите
Код AS3:
import flash.text.TextField;
var percent:int = loadWindow.percentLoaded;
//var info_txt:TextField = new TextField();//ОН ЖЕ НАРИСОВАН РУЧКАМИ!!!
info_txt.text = "Welcome to the home frame";
 
restart_btn.addEventListener(MouseEvent.CLICK, goStart);
 
function goStart(e:MouseEvent):void {
	gotoAndPlay("loop");
	count = 1;
}
 
loadList.addEventListener(Event.CHANGE, loadFile);
 
function loadFile(e:Event):void {
	loadWindow.load(new URLRequest(e.target.selectedItem.data));
	loadWindow.addEventListener(ProgressEvent.PROGRESS, progressHandler);
	loadWindow.addEventListener(Event.COMPLETE, completeHandler);
	//loadWindow.addEventListener(Event.COMPLETE, textProgress);?!?!?!?
	//почему-же на Event.COMPLETE, а как-же 20% загрузки
	info_txt.scaleX = info_txt.scaleX = 1;//СБРОС
}
 
bar.visible = false;
loadingAnimation.visible = false;
loadingAnimation.stop();
loadingAnimation.alpha = .8;
 
function textProgress(e:ProgressEvent):void{
//if (loadWindow.percentLoaded in [20, 40, 60, 80, 100]){
//info_txt.scaleX += 5; info_txt.scaleY += 5;
//}
}
 
 
function progressHandler(e:ProgressEvent):void {
	bar.visible = true;
	prog_txt.visible = true;
	loadingAnimation.visible = true;
	var percent:int = loadWindow.percentLoaded;
	loadingAnimation.gotoAndStop(Math.ceil(percent/3));
	prog_txt.text = String(loadWindow.bytesLoaded) + " of " + String(loadWindow.bytesTotal) + " bytes" + "\n" + " (" + percent +"% loaded)";
	bar.setProgress(e.bytesLoaded, e.bytesTotal);
 
	//info_txt.text = 'hello'
	//ВОТ ЗДЕСЬ ЖЕ МОЖНО
	var p:Number = e.bytesLoaded/e.bytesTotal;
	info_txt.scaleX = 1+p; 
	info_txt.scaleY = 1+p;
}
 
function completeHandler(event:Event):void {
	bar.visible = false;
	prog_txt.visible = false;
	loadingAnimation.visible = false;
	loadWindow.removeEventListener(ProgressEvent.PROGRESS, progressHandler);
	loadWindow.removeEventListener(Event.COMPLETE, completeHandler);
}
Но всё равно не будет работать, потому что вы нарисовали на сцене info_txt, но не внедрили ни одного символа шрифта, кликайте на этом текстовом поле и в свойстве Anti-alias поставте к примеру Use device fonts так точно работает.

вот так даже будет с шагом 20
Код AS3:
function progressHandler(e:ProgressEvent):void {
	bar.visible = true;
	prog_txt.visible = true;
	loadingAnimation.visible = true;
	var percent:int = loadWindow.percentLoaded;
	loadingAnimation.gotoAndStop(Math.ceil(percent/3));
	prog_txt.text = String(loadWindow.bytesLoaded) + " of " + String(loadWindow.bytesTotal) + " bytes" + "\n" + " (" + percent +"% loaded)";
	bar.setProgress(e.bytesLoaded, e.bytesTotal);
 
	//info_txt.text = 'hello'
	//ВОТ ЗДЕСЬ ЖЕ МОЖНО
	var p:Number = e.bytesLoaded/e.bytesTotal;
	p = int(p*5);
	//p будет изменяться от 1 до 5
	//ведь 100/20 будет 5
	info_txt.scaleX = 1+p/5; 
	info_txt.scaleY = 1+p/5;
}
__________________
Гоночка


Последний раз редактировалось Alex Lexcuk; 21.03.2013 в 22:40. Причина: шаг 20
Создать новую тему Ответ Часовой пояс GMT +4, время: 00:28.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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