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

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

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

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
По умолчанию достучаться до stage

Можно ли из дочернего подгружаемого класса достучаться до stage, не зная имени основного класса? Как?

Стоит задача определить во внутреннем классе высоту и ширину stage
Каждый раз передавать параметром не хочется, вот ищу другие решения.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

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

Регистрация: May 2009
Сообщений: 220
Код AS3:
import flash.display.Stage;
???

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

Регистрация: Jan 2009
Сообщений: 1,651
У любого мувика есть ссылка на stage, если он _ДОБАВЛЕН_НА_СЦЕНУ_.

Т.е.
Код:
function Constructor () {
	addEventListener (Event.ADDED_TO_STAGE, stageHandler);
}

private function stageHandler (e:Event) {
	removeEventListener (Event.ADDED_TO_STAGE, stageHandler);
	trace (stage.stageWidth);
	trace (stage.stageHeight);
}


Последний раз редактировалось iflamberg; 20.07.2009 в 17:30.
Старый 20.07.2009, 17:30
PgeorgyV вне форума Посмотреть профиль Отправить личное сообщение для PgeorgyV Найти все сообщения от PgeorgyV
  № 4  
Ответить с цитированием
PgeorgyV

Регистрация: Apr 2008
Сообщений: 79
если дочерний объект присутствует в списке отображения, то дочерний_объект.stage.stage(Width|Height)
???

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

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Основной класс Main:
Код AS3:
package ttx{
	import flash.display.Sprite;
	import flash.display.Stage;
	import flash.display.MovieClip;
	import flash.display.DisplayObject;
	import flash.events.Event;
 
	public class Main extends Sprite {
		public static  var stage:Stage;
		var rub:Rub = new Rub(2,3);
		public function Main():void {
			trace(rub.Area());
		}
	}
}
Дочерний класс Rub (в папке ttx):
Код AS3:
package ttx{
	public class Rub {
		public var width:Number;
		public var height:Number;
 
		public function Rub(width:Number = 0, height:Number = 0) {
			this.width=width;
			this.height=height;
		}
		public function Area() {
			return width+height;
		}
	}
}
нужно получить размер именно из класса Rub, при чем не указывая имени родительского класса (в данном случае Main).
Я наверное или что-то не так делаю или не так понимаю. Можно пример? Спасибо.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

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

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

тогда - никак, кроме как тем способом, который вы использовали.

Ну или извратится - создав глобальную переменную, где хранить ссылку на Main. Что у вас в коде, собственно, почти сделано.

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

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

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


 


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


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