@engineer_tamago MovieClipのparentプロパティについては、だいたいこんな感じです。
@engineer_tamago MovieClipのparentプロパティについては、だいたいこんな感じです。
import flash.display.MovieClip;
/**
* 変数初期化
*/
//MovieClipのインスタンスを作成してhogeに代入
var hoge = new MovieClip();
trace(hoge.name); //instance1
//MovieClipのインスタンスを作成してfugeに代入
var fuge = new MovieClip();
trace(fuge.name); //instance2
//MovieClipのインスタンスを作成してcanvasに代入
var canvas = new MovieClip();
trace(canvas.name); //instance3
//MovieClipのインスタンスを作成してboyに代入
var boy = new MovieClip();
trace(boy.name); //instance4
/**
* addChild
*/
//hogeにfugeを追加
hoge.addChild(fuge);
//fugeにcanvasを追加
fuge.addChild(canvas);
//canvasにboyを追加
canvas.addChild(boy);
trace(fuge.parent == hoge); //true
trace(canvas.parent == fuge); //true
trace(boy.parent == canvas); //true
trace(boy.parent.parent.parent == hoge); //true
trace();
/**
* hogeのスコープが違う場合
*/
//関数fooを定義
function foo() {
trace("↓ここから関数foo内の処理");
//関数の中でhogeを宣言(このhogeは関数の中でしかアクセスできない)
var hoge = new MovieClip();
trace("hogeの名前は : " + hoge.name); //instance6
trace("fuge.parent == hoge");
trace(fuge.parent == hoge);//false
trace("↑ここまで関数foo内の処理");
}
//fooを実行
foo();
trace("hogeの名前は : " + hoge.name); //instance1
trace("fuge.parent == hoge");
trace(fuge.parent == hoge);//true
trace();
/**
* hogeに別のインスタンスを代入した場合
*/
//MovieClipのインスタンスを作成してhogeに代入
hoge = new MovieClip();
trace("hogeの名前は : " + hoge.name); //instance5
trace("fuge.parent == hoge");
trace(fuge.parent == hoge);//false