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

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

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

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
Я понимаю что пример может и не совсем правильный. Но в любом случае время не должно влиять.

Код AS3:
public function loadme():void {
	var spTelo:Loader = new Loader();
	spTelo.load(new URLRequest("http://www.hsharma.com/_assets2011/images/logo.png"));
 
	var pause:uint = setTimeout(function() {
		clearTimeout(pause);
		spTelo.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);				
	}, 500);
}
 
private function onLoaded(e:Event):void  {
	trace("loaded"); // Не выполнится
}
__________________
adobe AS3 manual

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

Регистрация: Jan 2009
Сообщений: 1,651
Щас. Как это не должно влиять! Ведь ты создал новую функцию, которая выполнится по таймеру, т.е., скажем, в следующем кадре. Т.е. в данном случае, очевидно, что ты вешаешь слушатель, когда данные уже могут быть загружены. Кстати, такие функции не рекомендуется создавать, их потом garbage collector плохо кушает. Да и setTimout вроде как "deprecated".

Такие вещи элементарно трейсятся дебаггером в любом случае. Вот покажи мне пример, где ты вешаешь слушатель в одном теле функции с loader.load и он не срабатывает, тогда с меня пиво.
__________________
мой пустой блог

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

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
А при чем здесь кадры? Если картинка будет грузиться больше чем пол секунды - то в моем примере обработчик сработает. А я говорю что это недопустимо, когда время загрузки может решать поведение слушателя.

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

Цитата:
Сообщение от iflamberg Посмотреть сообщение
Кстати, такие функции не рекомендуется создавать, их потом garbage collector плохо кушает. Да и setTimout вроде как "deprecated".
Ни о чем. setTimeout внутри сразу же очищается clearTimeout'ом
__________________
adobe AS3 manual

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

Регистрация: Jan 2009
Сообщений: 1,651
Цитата:
Я не утверждаю что в вашем примере это не сработает, я говорю что это вообще плохой тон, загружать что либо, а потом подписываться на событие. Вы просто еще не попадали в ситуации когда это важно.
Я утверждаю, что если ты подписываешься на событие в том же теле функции, что и создаешь загрузчик, то не важно, запустил и подписался, или подписался и запустил. Даже если грузишь локально. В любом случае, событие будет сгенерированно только после выхода из тела функции. Это логично и отчетливо видно при дебаге.

Цитата:
Ни о чем. setTimeout внутри сразу же очищается clearTimeout'ом
Угу, угу. Создай в цикле тысячу таких функций, подожди пол секунды, пока они выполнятся, открой профайлер. У тебя в памяти будет висеть тысяча динамически сгенерированных функций, с которыми мусорщик не знает что делать.

Ну, в общем, не важно =) Давай закроем офтоп, а то у меня и второго аватара здесь забанят, традиция возникнет, банить меня каждых четыре года =)
__________________
мой пустой блог

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

Регистрация: Jun 2009
Сообщений: 81
Уууу) в итоге кто в курсе как быть с Loader'ом?

Я уже все перепробовал что находил в интернете:

Код AS3:
var spTelo:Loader = new Loader();
spTelo.load(new URLRequest("http://****.swf"));
spTelo.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
function onLoaded(e:Event){
addChild(spTelo);
spTelo.x=275;
spTelo.y=274;
MovieClip(spTelo.content).gotoAndStop(0) // и MovieClip(spTelo.contentLoaderInfo.content).gotoAndStop(0) пробовал
}
Все грузится но строчка с остановкой кадра игнорируется и кадры просто бегают как и без неё

Тоже посоветовали но опять игнорируется gotoAndStop
Код AS3:
	addChild(loader);
	var loadedClip:MovieClip = loader.content as MovieClip;
	loadedClip.gotoAndStop(3)

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

Регистрация: Oct 2010
Адрес: Харьков
Сообщений: 616
Записей в блоге: 1
Отправить сообщение для strangedk с помощью ICQ Отправить сообщение для strangedk с помощью Skype™
Я думаю дело в том, что нулевого кадра не существует. Кадры начинаются с 1-го

(а просто stop() не работает тоже?)

Добавлено через 5 минут
кстати, а зачем вы добавляете сам лоадер? может есть резон добавить его content as MovieClip ?
__________________
adobe AS3 manual

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

Регистрация: Jun 2009
Сообщений: 81
я уже все 3 кадра пробовал)

Попробовал Stop() тоже без успешно.

Попробовал добавить мувиклип на сцену, но он не добавляется либо просто пустой добавляется так как его не видно.
Код AS3:
var loadedClip:MovieClip = spTelo.content as MovieClip;
addChild(loadedClip);
loadedClip.stop();
loadedClip.x=100;
loadedClip.y=100;

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

Регистрация: Jan 2009
Сообщений: 1,651
Гудвин, рекомендую создать новую тему, пока уважаемые модераторы не заворчали.
По теме. Слушай, так мувик при добавлении на сцену отображается или не отображается? Если не отображается, то с чего ты решил, что он загружен? Может там IOError возникает или ошибки политики безопасности. В чем ты работаешь? Прямо в Flash IDE? Где лежит загружаемый мувик? Локально? Удаленно? может быть у тебя в загруженный мувик останавливается, а внутри него вложенный мувик продолжает движение? Короче, всю флешку в студию. Или выкоцанный кусок, который не работает.
__________________
мой пустой блог

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

Регистрация: Jun 2009
Сообщений: 81
Loader грузит в том то и дело. И флешка появляется и воспроизводится а вот управлять я ей все не как не могу
Она без конца циклически проигрывается

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

Регистрация: Jan 2009
Сообщений: 1,651
Точно в загружаемом ролике нет вложенных клипов, которые естественно не останавливаются на stop()?

В загружаемой флешке кода нет?

Короче говоря. Приведенный вами код должен работать. Если не работает, то никакая телепатия не поможет понять что там у вас не так. Присылайте пациента. Только пожалейте нас, уберите все что не относится к проблеме.
__________________
мой пустой блог

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

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

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


 


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


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