2012-01-12 11 views
0

これは今や私を狂ってしまう。AS3動的に追加されたループからどのボタンがクリックされたかを調べる

ボタンを作成するループがあります。各ボタンは画面上にとどまりますが、スクロールオフします。これは、画面上の4つのボタンまでいつでも可能です。合計241のボタンがあります。

アレイを使用すると後でこれらのボタンにアクセスできるようになり、それは素晴らしいことですが、どのボタンがクリックされたかを正確に伝える方法は見つけられません。

私はここで何か非常に単純なものがありますか?

if (canAdd == true) 
     { 
      canAdd = false; 
      while (curName < nextName) 
      { 
       var names:namez = new namez(); 
       names.ID = curName; 
       names.name = "ID"+(curName); 
       mcArray[curName] = names; 
       names.t2.dtf_txt.text = getNames[curName]; 
       names.y = -28; 
       spinner.addChild(names); 
       if (curName < nextName) 
       { 
        curName = nextName; 
        trace("curName updated to "+curName); 
       } 
      } 
      mcArray[curName - 1].addEventListener(MouseEvent.CLICK, checkMe); 
     } 

     timer.start(); 

    } 

    public function checkMe(e:MouseEvent) 
    { 
     trace("you clicked " + e.target.name); 
     //trace("clicked: "+e.target.ID) 
     //var names:namez = e.target as namez; 
     //trace("clicked" + names.ID); 
     //trace("clicked"+namez.ID); 
    } 
} 

checkMeには正確に何が含まれていますか?

私はすべての種類を試しました - namezクラスにはID内部変数がありますが、それでも呼び出すとエラーが発生します。

+0

e.currentTargetを使用する必要がありますか? –

答えて

3

あなたがボタンをクリックすると、その行の出力を何代わりe.target

関連する問題