范围问题 - 使用actionscript控制按钮内的动画片段

时间:2008-10-13 14:52:11

标签: actionscript scope actionscript-2

我正在尝试使用动作脚本2显示/隐藏位于按钮元件图层上的动画片段(或图形)符号。这是我尝试的内容

在按钮的操作中:

on (release) {
 this.button_name.movieclip_name._alpha = 0;
 trace(this.button_name.movieclip_name);
}

并且跟踪返回 undefined ...所以我认为我在理解如何解决子元素方面遇到了问题。但是我不是一个flash程序员......只是为了一个侧面项目而攻击它,所以我可能只是不明白它是如何工作的。

谢谢,Jim:)

2 个答案:

答案 0 :(得分:1)

对于AS2,将MovieClip放在按钮中并不是一个好主意。最简单,最直接的方法是重构事物,使你的按钮和你内部的动画片段处于同一级别,也许是在为了包含它们而创建的新MC中。您应该将Button符号视为仅提供可点击的匹配状态的东西,但不是其他东西的容器。

至于你的后续,是的,你确实可以使用MovieClip作为按钮。如果你给你的MC函数来处理类似按钮的事件(onPress,onRelease,onReleaseOutside等),那些函数就像在Button上一样被调用。您还可以控制更精细的细节 - 请参阅MovieClip.hitArea和MovieClip.useHandCursor上的文档。

我经常做的一件事是在MC中创建名为“show”和“hide”的帧,然后是短动画和“stop()”命令,然后执行以下操作:

myMC.onRollOver = function() { gotoAndPlay("show"); }
myMC.onRollOut = myMC.onReleaseOutside = function() { gotoAndPlay("hide"); }
myMC.onRelease = function() {
    // do something....
}

答案 1 :(得分:0)

发现:this ...

他们谈论一些'其他方式'(除了使用按钮符号?)也许你可以使用一个movieclip符号作为按钮?