如何使用 ActionScript 3 / Flash CS5 检查鼠标是否位于符号实例上?
问问题
6299 次
3 回答
6
如果要获取作为显示对象容器的子对象的所有对象的列表,请查看getObjectsUnderPoint方法。
否则,您可以使用hitTestPoint并通过 mouseX 和 mouseY 坐标传递一个点。
于 2010-09-27T23:49:46.360 回答
1
Juan Pablo 是正确的,但我发现如果没有正确应用 hitTestPoint 可能会很挑剔。具体来说,第三个参数(shapeFlag Boolean)应该为 TRUE(默认为 FALSE),并且当 mouseX/Y 不可用时,在鼠标事件上使用 event.stageX/Y 通常可以工作。
无法准确解释原因,但根据我的经验,以下是非常简单的证明:
if (hitTestPoint(event.stageX, event.stageY, true))
// Do something
于 2010-09-29T21:36:47.287 回答
0
为什么不使用 MouseEvent?
symbol.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
function onMouseOver(evt:MouseEvent):void
{
//is called when mouse is over your symbol.
}
于 2010-09-28T06:21:26.923 回答