减少动画片段按钮上的命中区域

时间:2010-09-20 00:12:19

标签: flash actionscript-3 movieclip

嘿伙计们,我需要弄清楚一点问题。我创建了一个包含2个文本字段的影片剪辑按钮,一个是静态的,一个是动态的。动态文本字段包含长度不同的字符串。这个MC通常被用作一个按钮,所以我试图做的不是命中区域与文本框的长度一样大。

如果您转到http://bodog-bonuses.com/mevame/并点击(取出>菜单),您会在菜单上看到列出的所有项目都与图片重叠,我想限制点击区域,以免发生。我不能缩短MC,因为它的长度会有所不同,如果它变得那么长,则该部分不应该是可点击的。

感谢任何帮助,谢谢。

3 个答案:

答案 0 :(得分:3)

我没有看到您所描述的问题,但是将最大设置宽度与TextField结合应用于TextField的autoSize属性的TextFieldAutoSize.LEFT应该允许按钮根据需要垂直增长而不会水平重叠图像

答案 1 :(得分:0)

嗯,这是不可能的..因为两个文本字段都是Movie-Clip的Child,所以如果任何文本字段的大小增加,Movie-Clip的宽度也会增加。 但是,我给你的样本逻辑可以帮助你.. box是你的影片剪辑,它包含两个文本字段,现在你可以在事件监听器中

box.addEventListener(MouseEvent.CLICK,showMovieClip);

function showMovieClip(evvt:MouseEvent):void

{

if(box.mouseY < (box.height/2))trace("half of the Movie-Clip height is click able")
if(box.mouseX < (box.width/2))trace("half of the Movie-Clip width is click able ")

}

这两个条件可让您知道点击的位置。您可以使用它们中的任何一个或两者,具体取决于您的要求。

答案 2 :(得分:0)

我会在方框movieclip中放一个较小的方块,你想成为实际的命中区域。如果您要调用内部较小的方格hitBoxMC,则可以通过boxMC.hitBoxMC.hitTestObject(Blah....);

来访问它