e.target.name

たとえば、こんなコードでインスタンスをつくったときに

var newmc :mog;
newmc = new mog();
newmc.x = Math.floor(Math.random() * stage.stageWidth );
newmc.y = Math.floor(Math.random() * stage.stageHeight );
addChild (newmc) ;

生成されたインスタンスへ、自分自身を消す関数も毎回登録するときのコード。
基本的には同じ内容の関数を登録する。
e.targetでマウスクリックされているインスタンスを示すことができる。
e.target.nameでクリックされているインスタンスの名前の文字列を取得。
getChildByName(e.target.name)でクリックされたインスタンスを消去。


newmc.addEventListener(MouseEvent.CLICK, st21);
function st21(e:MouseEvent):void{
removeChild(getChildByName(e.target.name));
}
-------------------------------

ググったらこんな感じの処理でもできるらしいけど、こっちは色々むずかった。
参考:http://okwave.jp/qa/q6444537.html



contena["on"+ data1] = function(e:MouseEvent):void{
removeChild(getChildByName(e.target.name));
count += 1;
}
contena["mog" + data1] = newmc;
contena["mog"+ data1].addEventListener( MouseEvent.CLICK ,contena["on" + data1] );


( ´゚д゚)=3

0 件のコメント:

コメントを投稿