MovieClip.hitTest()

可用性

Flash Player 5。

用法

my_mc.hitTest(x, y, shapeFlag)
my_mc.hitTest(target)

参数

x 舞台上点击区域的 x 坐标。

y 舞台上点击区域的 y 坐标。

x 和 y 坐标都在全局坐标空间中定义。

target 可能与由 my_mc 指定的实例交叉或重叠的点击区域的目标路径。target 参数通常表示一个按钮或文本输入字段。

shapeFlag 一个布尔值,指定是计算指定实例的整个形状 (true) 还是仅计算边框 (false)。只有当用 xy 坐标参数标识点击区域时,才可以指定该参数。

返回

如果 my_mc 与指定的点击区域重叠,则为布尔值 true,否则为 false

说明

方法;计算由 my_mc 指定的实例以确定它与由 targetxy 坐标参数所标识的点击区域是否重叠或交叉。

用法 1:按照 shapeFlag 的设置,将 xy 坐标与指定实例的形状或边框进行比较。如果 shapeFlag 设置为 true,则只计算舞台上实例实际占据的区域,如果 xy 重叠任意一点,则返回 true 值。这对于确定影片剪辑是否在指定的点击区域或热点区域中很有用。

用法 2:计算 target 与指定实例的边框,如果它们在任意一点上重叠或交叉,则返回 true

示例

下面的示例使用带有 _xmouse_ymouse 属性的 hitTest() 来确定鼠标指针是否位于目标的边框上方:

if (hitTest( _root._xmouse, _root._ymouse, false));

下面的示例使用 hitTest() 来确定影片剪辑 ball 是否与影片剪辑 square 重叠或交叉:

if(_root.ball.hitTest(_root.square)){
  trace("ball intersects square");
}

另请参见

MovieClip.getBounds()MovieClip.globalToLocal()MovieClip.localToGlobal()