表示オブジェクトコンテナに追加した後からオブジェクトの重なり順を変更する方法。
DisplayObjectContainerクラスのメソッドを使用して実現します。
インデックスを指定する
setChildIndex()メソッド
重なり順を変更したい子オブジェクトのインデックスを指定します。インデックスが適切な範囲内にないとエラーが発生するので、numChildrenプロパティ(コンテナの子の数)などを参照して適切なインデックスを指定する必要があります。コンテナに含まれる他の子オブジェクトのインデックスは、自動的に前後の値に調整されます。
ちなみに、子オブジェクトのインデックスを取得するにはgetChildIndex()メソッドを使用します。
例
this.setChildIndex(mc, 2);
コンテナ(this)に含まれる子オブジェクト(mc)のインデックスを2に設定する。
サンプル
クリックされたオブジェクトのインデックスを0に指定しています。その他のオブジェクトのインデックスが自動的に調整されている様子が分かります。
This movie requires Flash Player 11
2つを入れ替える
swapChildren()メソッド
入れ替えたい2つの子オブジェクトを指定して、重なり順を変更します。コンテナに含まれている、他の子オブジェクトのインデックスには影響はありません。
例
this.swapChildren(mc1, mc2);
コンテナ(this)に含まれる子オブジェクト(mc1)と子オブジェクト(mc2)を入れ替える。
サンプル
最初にクリックされたオブジェクトと次にクリックされたオブジェクトを入れ替えています。
This movie requires Flash Player 11
コメントを残す
コメントを投稿するにはログインしてください。