2013-04-02 86 views
0
<fx:Script> 
    <![CDATA[ 
private function handleClick(id:String):void { 
      trace("id clicked: " + id); 
      if(id == "1") { 
       trace("1 clicked"); 
      } else if(id=="2") { 
       trace("2 clicked"); 
      } else { 
       trace("Nothing"); 
      } 
     } 
    ]]> 
</fx:Script> 

<s:Group width="100%" height="100%" click="handleClick()" > 
     <s:BitmapImage id="1"/> 
     <s:BitmapImage id="2"/> 
</s:Group> 

你好。基於上面的代碼,我試圖將點擊的BitmapImage的id傳遞給handleClick函數。我做這件事的最好方法是什麼?獲取組內點擊對象的ID

感謝

回答

1

這是不可能處理的BitmapImage的點擊,你就需要把它放在一個集團或其他容器處理它裏面,下面的例子會爲你工作:

<![CDATA[ 
      import mx.controls.Alert; 
      private function handleClick(event:Event):void { 
       var id:String = event.target.id; 
       trace("id clicked: " + id); 
       if(id == "1") { 
        trace("1 clicked"); 
       } else if(id=="2") { 
        trace("2 clicked"); 
       } else { 
        trace("Nothing"); 
       } 
      } 
     ]]> 
    </fx:Script> 

    <s:Group width="100%" height="100%" click="handleClick(event)" > 
     <s:Group id="b1" > 
      <s:BitmapImage /> 
     </s:Group> 
     <s:Group id="b2" > 
      <s:BitmapImage /> 
     </s:Group> 
    </s:Group> 
+0

這一個工作得很好,但在我看來,宣佈嵌套組是凌亂的。謝謝! – paperclip

+1

我同意...... Adob​​e建議使用一個Graphic而不是Group,請看http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/primitives/BitmapImage.html – fmodos

+0

非常感謝爲鏈接! – paperclip

0
click="handleClick(event)" 

...handleClick(event:Event) 
{ 
    trace(event.target.id); // this is what you want 
} 
+0

跟蹤顯示空... – paperclip