stage, rootの覚書 : ActionScript3
表示リストに追加していないオブジェクトはstage,rootを参照できない。 ドキュメントサイズ 550×400 ライブラリ outer クラス名 Outer inner クラス名 Innervar outer:Outer = new Outer();
var inner:Inner = new Inner();
outer.x = 100;
outer.y = 100;
inner.x = 50;
inner.y = 50;
trace(outer.root); /* null */
trace(inner.root); /* null */
trace(outer.stage); /* null */
trace(inner.stage); /* null */
trace(outer.stage.stageWidth); /* TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。 */
trace(inner.stage.stageWidth); /* TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。 */
// 表示リストに追加するとstage,rootを参照できる
addChild(outer);
outer.addChild(inner);
trace(outer.root); /* [object MainTimeline] */
trace(inner.root); /* [object MainTimeline] */
trace(outer.stage); /* [object Stage] */
trace(inner.stage); /* [object Stage] */
trace(outer.stage.stageWidth); /* 550 */
trace(inner.stage.stageWidth); /* 550 */
表示リストに追加されたオブジェクトのstage,rootプロパティは常に同じものを参照。
outer, innerのタイムラインにそれぞれ下記のスクリプトを記述。
trace(root); /* [object MainTimeline] */
trace(stage); /* [object Stage] */
trace(stage.stageWidth); /* 550 */
関連記事
- 関連記事は見つかりませんでした。
検索ボックスからの検索もお試しください。
コメント
コメントはまだありません。
コメントの投稿
改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。
トラックバックURL
http://www.findxfine.com/flash/actionscript3/791.html/trackback