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

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

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

Регистрация: Mar 2010
Сообщений: 44
По умолчанию Внешний прелоадер и обращение к stage

Здравствуйте,

Есть внешний прелоадер:
Код AS3:
package {
	import flash.display.MovieClip;
	import flash.net.URLLoader;
	import flash.net.URLRequest;
	import flash.events.Event;
	import flash.events.ProgressEvent;
	import flash.display.Loader;
 
	public class MainPreloader extends MovieClip {
		private var _preloader:Preloader;
		private var _loader:Loader;
		private var _myMovie:MovieClip;
 
		public function MainPreloader():void {
			addPreloader();
			addLoader();
		}
		private function addPreloader():void {
			_preloader = new Preloader();
			_preloader.x = stage.stageWidth/2;
			_preloader.y = stage.stage.stageHeight/2;
			addChild(_preloader);
			_preloader.gotoAndStop(1);
		}
		private function addLoader():void {
			var url:URLRequest = new URLRequest('myswf.swf');
			_loader = new Loader();
			_loader.load(url);			
			_loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressLstnr);
			_loader.contentLoaderInfo.addEventListener(Event.INIT, onCompleteLstnr);
		}
		private function onCompleteLstnr(e:Event):void {
			trace("DONE!!!");
			_preloader.percent_txt = null;
			removeChild(_preloader);
			_myMovie = MovieClip(_loader.content)
			addChild(_myMovie);
 
		}
		private function progressLstnr(e:ProgressEvent):void {
			var percent:Number = e.bytesLoaded/e.bytesTotal;
			_preloader.percent_txt.text = Math.ceil(percent * 100).toString() + " %";
			_preloader.gotoAndStop(Math.ceil(percent * 100))
		}
	}
}
Если загружаемый файл обращается к стейдж, выдает ошибку. Например:
Код AS1/AS2:
stage.stageWidth
не работает, но если задать ширину вручную - все гуд. Что делать, если есть только скомпиленая swf, которая должна подгружатся?

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Event.ADD_TO_STAGE в подгружаемой нужно слушать.
__________________
тут я

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

Регистрация: Feb 2012
Сообщений: 1,540
Код AS3:
addEventListener(Event.ADDED_TO_STAGE,startFunctions)
function startFunctions(e:Event){
stage.stageWidth
}
Более подробно.
Сам с таким сталкивался.

Цитата:
Что делать, если есть только скомпиленая swf, которая должна подгружатся?
Если у тебя нет .fla, то ничего.

Старый 14.02.2012, 18:57
zmeevolk вне форума Посмотреть профиль Отправить личное сообщение для zmeevolk Найти все сообщения от zmeevolk
  № 4  
Ответить с цитированием
zmeevolk

Регистрация: Mar 2010
Сообщений: 44
Так в том-то и все дело что .фла нету, а свф-ок таких, к которым нужно приделать прелоадер довольно много. Неужели ничего нельзя сделать?

Добавлено через 36 секунд
Не могу ничего слушать в подгружаемой, нет исходников

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

Регистрация: Feb 2012
Сообщений: 1,540
Цитата:
Неужели ничего нельзя сделать?
Нельзя.
Это была бы дыра в безопасности.

Старый 14.02.2012, 19:58
zmeevolk вне форума Посмотреть профиль Отправить личное сообщение для zmeevolk Найти все сообщения от zmeevolk
  № 6  
Ответить с цитированием
zmeevolk

Регистрация: Mar 2010
Сообщений: 44
Цитата:
Сообщение от MikroAcse Посмотреть сообщение
Нельзя.
Это была бы дыра в безопасности.
Как же быть?

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

Регистрация: Feb 2012
Сообщений: 1,540
Цитата:
Неужели ничего нельзя сделать?
Цитата:
Как же быть?
Это одинаковые вопросы.

Ответ:
Ничего нельзя поделать.

Старый 14.02.2012, 20:35
zmeevolk вне форума Посмотреть профиль Отправить личное сообщение для zmeevolk Найти все сообщения от zmeevolk
  № 8  
Ответить с цитированием
zmeevolk

Регистрация: Mar 2010
Сообщений: 44
Цитата:
Сообщение от MikroAcse Посмотреть сообщение
Это одинаковые вопросы.

Ответ:
Ничего нельзя поделать.
Meгапечально

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

Регистрация: Mar 2007
Сообщений: 319
делать addChild _loadera не после загрузки, а до. (только если код подгружаемой был в кадрах)


Последний раз редактировалось Nooob; 14.02.2012 в 22:21.
Старый 15.02.2012, 12:44
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 10  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Можно пропатчить байткод налету.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

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

Теги
stage , Внешний прелоадер
Опции темы
Опции просмотра

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

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


 


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


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