Показать сообщение отдельно
Старый 20.09.2012, 16:59
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 11  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
Цитата:
Сообщение от Isfet Посмотреть сообщение
ну суть в том, как обращаться к this.parent.perent.perent.parent as Main например, как доставать этот класc? Не хочется во всех детей передавать его.
Хранить статический метод, который вытаскивает ссылку на Main класс? Стоит ли Stage присваивать класс Main?
Как в таком случае оращаться к Main из детей(можно обращаться this.root as Main но не знаю правильно ли это)? Как я понял что когда Document class ставишь Main он становится статичным, и как тогда к нему обращаться из детей?
root и есть ссылка на экземпляр документ класса флешки, так и обращаться
нет в AS статичных классов, как нет никаких хитрых чудес при определении документ класса (по сути он всегда есть, только когда он явно не определен IDE\компилятор генерят его сами)

Цитата:
Сообщение от fish_r Посмотреть сообщение
да, а я то иначе считал (http://www.flasher.ru/forum/showthre...=173074&page=3)
в лом перечитывать все, но в той ветке немного о другом вроде бы
вот смотри
Код AS3:
package
{
	import flash.display.DisplayObject;
	import flash.display.Sprite;
 
	public class Main extends Sprite
	{
		public var timeScale:TimeScale;
 
		public function Main():void
		{
			timeScale = new TimeScale(this);
		}
 
		public function tracer():void
		{
			trace( "Main.tracer" );
 
		}
	}
}
import flash.display.Sprite;
 
class TimeScale extends Sprite
{
 
	public function TimeScale(main:Main)
	{
		// на этот момент main.timeScale еще не определена
		// все происходит  до присваивания timeScale ссылки на экземпляр
		trace( "main.timeScale : " + main.timeScale );// main.timeScale : null
		// но сам-то main в порядке
		trace( "main : " + main );// main : [object Main]
		// и методы его тоже
		main.tracer();// Main.tracer
 
	}
}