鼠标点击舞台上任何点击的对象,可能吗?

时间:2011-03-09 05:48:48

标签: flash actionscript-3 events

我有10个对象的mc而不是为每个对象编写代码我希望在每个被点击的对象上执行相同的操作,1个代码是否有办法实现呢?

2 个答案:

答案 0 :(得分:0)

您可以在舞台上或父级影片剪辑中侦听MouseEvent.CLICKevent.target变量将指向已点击的对象:

  stage.addEventListener(MouseEvent.CLICK, function(event:MouseEvent):void {
     trace('clicked', event.target);
  });

答案 1 :(得分:0)

我不太确定我完全理解您的问题是什么,但您可以使用for循环来遍历DisplayObjectContainer对象的子DisplayObject个对象。然后在每次迭代时,将事件侦听器添加到侦听DisplayObject事件的当前子MouseEvent.Click对象。

for(var i:uint = 0; i < displayObjectContainer.numChildren; i++)
{
    displayObjectContainer.getChildAt(i).addEventListener(MouseEvent.CLICK, clickHandler);

}// end for

function clickHandler(e:MouseEvent):void
{
    // code to handle click event

}// end function