Flash CS5 Actionscript 3.0将影片剪辑用作带链接的按钮

时间:2013-07-14 23:25:48

标签: flash button actionscript flash-cs5

所以我有一个动画按钮形式的动画按钮,我希望能够用作链接。使用我在网上找到的脚本鼠标悬停和鼠标关闭动画片段,效果很好。但是,当我尝试创建一个简单的actionscript命令以使影片剪辑充当链接时,我收到以下错误:

  

TypeError:错误#1009:无法访问空对象引用的属性或方法。       在PheV3_fla :: MainTimeline / frame185()

我在网上找到的所有教程都使用了"按钮"用于链接的类型而不是影片剪辑,这似乎工作正常,但我需要将其作为动画的影片剪辑。以下是我使用的代码:

import flash.events.MouseEvent
import flash.net.URLRequest

MixesButtonTop.addEventListener(MouseEvent.CLICK, fl_ClickToGoToWebPage_2);

function fl_ClickToGoToWebPage_2(event:MouseEvent):void
{
    navigateToURL(new URLRequest("http://www.adobe.com"), "_blank");
}

我是否需要引用影片剪辑按钮中的一个符号本身?我对这一切都很陌生,所以如果我错过任何事情请告诉我,非常感谢你的帮助!

2 个答案:

答案 0 :(得分:0)

您应该在属性选项卡下为您的按钮指定一个实例名称,然后按该名称引用它,而不是在库中调用它。要做到这一点,你需要

  1. 选择舞台上的按钮实例。
  2. 选择窗口>属性,然后在“实例名称”框中输入名称。
  3. 例如,您设置实例名称MixesButtonTop。然后你应该在你的代码中声明一个变量:

    var buttonMC:MovieClip = MixesButtonTop;
    

    这应该可以解决你的问题。

答案 1 :(得分:0)

如果您的按钮存在于时间轴中,则需要为其指定实例名称(请参阅jfgi的响应)。通过此实例名称,您可以在代码中引用它。没有必要将它分配给变量(与jfgi写的相反) - 但是如果你使用的是Flash IDE,那么将它分配给变量并添加类型(:MovieClip)将帮助你进行代码提示,否则IDE无法确定符号的类型。注意:库中符号的名称是“类名”(链接)。您不能使用类名命令和类的INSTANCE。您需要将其分配给变量/在属性窗口中为其指定实例名称。如果手动将符号从库中放置到舞台上并且想要控制它,则总是需要添加实例名称。 ('总是'......因为还有其他方法可以检索引用,例如getChildAt等...)

我不得不将此作为答案发布,评论时间过长。