AS3:按钮内的movieclip问题

时间:2013-09-26 15:38:06

标签: actionscript-3 flash button movieclip

我一直在读你无法将一个动画片段嵌套在一个按钮内,但我有一个带有脉冲效果的按钮。

我遇到的问题是它没有处理我创建的另一个按钮。我只是想创造一个闪烁的效果,但它不是在阅读它。

我已经看过如何将一个movieclip制作成一个按钮的教程,但它没有用。

任何帮助都将不胜感激。

谢谢!

3 个答案:

答案 0 :(得分:0)

你知道什么是有趣的,这件事发生在我身上。我创建了一个带有影片剪辑的按钮,它工作正常一次,然后下次我尝试这样做,我无法让它工作。我认为作为一般经验法则,你不应该期望在按钮中嵌套动画片段。我不记得我第一次做了什么,但我认为它与扩展影片剪辑类而不是扩展简单按钮有关。

问题当然是如果你创建了一个类型按钮的符号,它不会让你扩展影片剪辑。无论如何,有些东西可以很容易地解决你的问题。

我现在所做的是你想要的任何影片剪辑,单独创建它,使用代码将它放在按钮顶部,然后应用以下代码。

mouseEnabled = false;
yourMovieclip.mouseEnabled = false;
yourMovieclip.mouseChildren = false;

这样你的按钮就可以正常工作(即你的动画片段不会阻止按钮的鼠标检测)。希望有所帮助!

答案 1 :(得分:0)

为什么不创建一个MovieClip并为它提供一些事件监听器来翻转和推出,告诉它在其时间轴上设置某个点的动画?您不需要使用按钮的按钮符号。我甚至想不起上一次。

答案 2 :(得分:0)

SimpleButton类型可能会变得挑剔。 SimpleButtons非常简单,并不像MovieClip那么复杂,当您将MC嵌套到Button中时,结果并不总是如预期的那样,看起来是随机的。创建一个MovieClip并在第一帧上为它提供事件监听器就不那么痛苦了,例如:

stop();
this.addEventListener(MouseEvent.ROLL_OVER, hoverState);
this.addEventListener(MouseEvent.ROLL_OUT, normalState);

function hoverState(event:MouseEvent):void
{
   gotoAndStop(2);
}
function normalState(event:MouseEvent):void
{
   gotoAndStop(1);
}

然后在第1帧和第2帧上分别使用你想要的MovieClip作为普通和悬停状态。这样,您只需将MovieClip嵌套在MovieClip中,而不是嵌套在SimpleButtons中。