如何在缩放电影时使用hitTestPoint

时间:2010-10-20 20:46:47

标签: flash actionscript-3 actionscript

谷歌说:

displayObject.hitTest(stage.mouseX, stage.mouseY, true)

是测试鼠标在DisplayObject上的方法。如果我的电影以100%比例显示,则此方法有效。但是如果最大化我的浏览器窗口,那么Flash电影会改变比例,那么一切都会变成碎片。

有人有办法解决这个问题吗?

非常感谢。

1 个答案:

答案 0 :(得分:2)

我通常使用:

 stage.addEventListener(MouseEvent.MOUSE_OVER, functionName);

但是,如果您有使用hitTest方法的特定原因,那么您可能需要考虑将您的点从全局转换为本地MovieClip坐标。缩放MovieClip后,它的x-y坐标不再以1对1映射到舞台坐标。但是,您可以使用以下方法让Flash知道您正在谈论的坐标:

 yourMovieClip.globalToLocal( yourTestPoint )); // [x=-10, y=0]

以下是所有文档的相关链接......

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/DisplayObject.html

您可能还想看一下“hitTestObject()”方法,该方法与hitTestPoint完全相同,只使用整个对象......没有点!

希望这会有所帮助。

相关问题