在鼠标下获取对象

时间:2009-09-16 04:58:42

标签: flash actionscript-2

有没有办法让鼠标下的当前对象?在AS3上有一个名为getObjectsUnderPoint()的函数,但我需要知道AS2是否提供了类似的功能。如果没有,任何人都能很好地实现我想要实现的目标吗?

不能选择迁移到AS3。

谢谢!

2 个答案:

答案 0 :(得分:3)

getObjectsUnderPoint返回给定点下对象的对象数组。

我写了这个条件来检查鼠标是否在特定图层上的任何对象上。

if (mySprite.getObjectsUnderPoint(new Point(mouseX, mouseY)).length) 
{
    return;
}
else
{
    doSomething();
}

您还可以使用stage.getObjectsUnderPoint进行全局检查。

希望这有帮助。

  

不能选择迁移到AS3。   没关系...

答案 1 :(得分:2)

您可以使用AS2自动执行此操作,但它只能获得最顶层的对象。

这是使用动画片段的_droptarget属性完成的。你做的是制作一个空白的MovieClip,在lockCenter arugment设置为true的情况下对其运行startDrag。然后你stopDrag并查看剪辑_droptarget属性。

执行此操作的唯一方法是手动循环剪辑并使用hitTest方法。