AS3.0でAS2.0の[_root]指定のメモ

すごくハマった。半日ハマったのでメモ。

困ったら、とりあえずMovieClip(root) に。

強引にムービークリップ型にキャスト(型変換)しないとダメっぽい。

MovieClip(root) よりも MovieClip(stage.getChildAt(0)) の方が正しいっぽい。
でもキャストしないとムービークリップを参照指定できないのが釈然としない。
このやり方が正しいんだろうか?
AS2.0の感覚がしみ込んでるので、とても痛い目に遭います。

以下、ドキュメントクラスから読み込んだ外部asからの参照テストのメモ。

[code]
package {
public class Main extends MovieClip {
public function Main():void {
trace(“this= “+ this);
trace(“this.root= “+ this.root);
trace(“this.parent= “+ this.parent);
trace(“parent = “+ parent);
trace(“stage = “+ stage);
trace(“stage.root = “+ stage.root);
//trace(“parent.stage.root = “+ parent.stage.root); //エラー
trace(“this.stage.root = “+ this.stage.root);
trace(“MovieClip(root).pageAll = “+ MovieClip(root).pageAll);
trace(“MovieClip(stage.getChildAt(0)) = “+ MovieClip(stage.getChildAt(0)));
//trace(“this.stage.root.pageAll = “+ this.stage.root.pageAll); //エラー
}
}
}
[/code]

出力結果メモ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


*