イナヅマtvログ

Class内でstageプロパティがnullになる

| 2 Comments

Sprite, MovieClipを継承したクラスでstageがnullになりアクセスできない。
Flashコンパイル時に以下のエラーが。
TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。

ステージにインスタンスを追加したことを確認した後で参照しないといけない様子。

package  {
	import flash.display.MovieClip;
	import flash.events.Event;
	public class SomeClass extends MovieClip {
		public function SomeClass(){
			super();
			if (stage) init(null);
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		private function init(evt:Event) : void {
			if (evt != null)
				removeEventListener(Event.ADDED_TO_STAGE, init);
			trace (stage.stageWidth);
		}
	}	
}

なるほどねって感じだったりするけど、Flashヘルプのstageが使われているサンプルスクリプトもエラーが出てちょっとハマった。

2 Comments

  1. Pingback: ActionScript3 / QuickBox2DのcreateStageWalls()でエラー — COMMUNICATION HIHYO

  2. Pingback: Actionscript 3.0, 初心者がおかしがちな6つの間違い | イナヅマtvログ

コメントを残す

Required fields are marked *.

*