• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:for文で配置した物の個別取得【AS3.0】)

【AS3.0】for文で配置した物の個別取得

このQ&Aのポイント
  • AS3.0を使ってfor文で配置した複数のムービークリップを個別に取得する方法を教えてください。
  • 現在、ムービークリップをロールオーバーすると常に3が返されてしまいます。この問題を解決する方法を教えてください。
  • 今後は個々のムービークリップにアクションを追加したいと考えています。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

イベントリスナー(リスナー関数)の 引数 e には イベント が入り その イベント e の currentTarget または target プロパティで その イベント を受けた対象インスタンスが得られます(というかそのために e がある)。 ですから e.currentTarget で マウスオーバーイベント を受けた インスタンス を取得すれば良いです。 それと, そのイベントリスナー(リスナー関数)は何度も定義しても同じなので forの外に出した方が良い(出すべき)です。 //----------------------------------- for (var i:uint=1; i<4; i++) { var test_list:test = new test(); test_list.x=i*50; test_list.num=i; this.addChild(test_list); test_list.addEventListener(MouseEvent.MOUSE_OVER,test_func); } function test_func(e:MouseEvent) { trace(e.currentTarget.num); } //-----------------------------------

w-word
質問者

お礼

早速の返答ありがとうございます。 記載頂いたソースで、希望どおりに動作しました! なるほど、eの部分はそうゆう使い方ができたんですね。 以前見た解説に「あまり使わないから、そうゆうものと思ってとりあえず入れとけ」的な事が書かれていて、自分でも違和感を感じつつ、そのままにしていた部分でした。 非常に助かりました。 ありがとうございました。

関連するQ&A