インスタンスの重なりを入れ替える

(section07-03 表示オブジェクトの重なりの変更から抜粋)

 インデックス番号は表示オブジェクトコンテナに追加された順に付けられますが、正確には表示オブジェクトの重なり順です。したがって、重なり順を変更したり、インスタンスを削除するとインデックス番号も付け変わります。
 次のサンプルではロールオーバーした表示オブジェクトの重なりを最前面にします。重なりを最前面にするには、インデックス番号が大きい物ほど重なりが上になるので、表示オブジェクトのインデックス番号を子オブジェクトの個数-1に設定します(10行目)。子オブジェクトの個数は親オブジェクトのnumChildrenプロパティで調べることができます(8行目)。
fig07-03-03a.jpgswfを試す

[:script:]ロールオーバーした表示オブジェクトを最前面にする
box_mc.addEventListener(MouseEvent.ROLL_OVER, onRollover);
ball_mc.addEventListener(MouseEvent.ROLL_OVER, onRollover);
penta_mc.addEventListener(MouseEvent.ROLL_OVER, onRollover);
//ロールオーバーで実行
function onRollover(eventObj:MouseEvent):void {
	var mc:MovieClip=eventObj.target as MovieClip;
	//子オブジェクトの個数-1
	var lastIndex:int=mc.parent.numChildren-1;
	//インデックス番号をセットする
	mc.parent.setChildIndex(mc,lastIndex);
}
まったく新しいAS3の世界!
694a.jpg
Adobe Flash CS4
詳細!ActionScript3.0入門ノート[完全改訂版](CD-ROM付)

楽しいActionScript。
新たなる1歩へと踏み出しましょう。
■内容は?→ 目次を見る
■評判は?→ 書評を読む
この本を書いたわけ

このブログ記事について

このページは、oshigeが2009年7月11日 15:04に書いたブログ記事です。

ひとつ前のブログ記事は「詳細!ActionScript 3.0入門ノート[完全改訂版]」です。

次のブログ記事は「Graphicsクラスの描画メソッドを使う」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

あわせて読みたいブログパーツ