Показать сообщение отдельно
Старый 24.09.2015, 08:21
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 5  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
эти ссылки появляются после добавления этого объекта в дисплей лист

Код AS3:
public class Main extends Sprite
	{
		private var _staticObjects:StaticObjects = null;;
 
		public function Main() 
		{
			_staticObjects = new StaticObjects();
			addChild(_staticObjects);
                      //только здесь станут доступны эти ссылки, и если вызвать какую-нибудь функцию в _staticObjects после этого , то там уже можно будет трейсить их
 
                      _staticObjects.traceRef();
но правильней - это подписаться на событие addEventListener(Event.ADDED_TO_STAGE, init);, как сказал neonoviiwolf
а в хэндлере - уже работать со stage

Код AS3:
 
package  
{
	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.text.TextFormat;
 
	public class StaticObjects extends Sprite
	{
		private var _stageHeader:TextField =  new TextField();
 
		public function StaticObjects() 
		{
                       this.addEventListener(Event.ADDED_TO_STAGE, init);
 
 
		}
                public function init(event:Event):void{
 
                        this.removeEventListener(Event.ADDED_TO_STAGE, init);
 
			var tf:TextFormat = new TextFormat();
			tf.align = "center";
			tf.font = "Arial";
			tf.size = 20;
 
			_stageHeader.text = "Прочитанный материал по ActionScript 3.0";
			_stageHeader.textColor = 0xFFFFFF;
			_stageHeader.border = true;
			_stageHeader.borderColor = 0x8000FF;
			_stageHeader.setTextFormat(tf);
			_stageHeader.width = _stageHeader.textWidth+5;
			_stageHeader.height = 25;
 
			addChild(_stageHeader);
 
			trace (this.parent); //null
			trace (this.root); //null
			trace (stage); // null                         
 
                }
 
	}
 
}