我试图嵌入一个swf到我的AS3 Flex项目是这样的:嵌入式button.swf不会触发Click事件
[Embed(source = "../assets/next_button.swf")]
[Bindable]
protected var nextButtonClass:Class;
protected var next_btn:MovieClip = next_btn = new nextButtonClass() as MovieClip;
// ...
next_btn.addEventListener(MouseEvent.CLICK, onAdChange);
next_button.swf是AS2及使用Adobe Flash CS4中创建。里面有一个按钮。
如果我在next_button.fla中将按钮符号的类型更改为movieclip,则在传递CLICK事件时没有问题。
我试图将next_btn投射到mx.controls.Button和fl.controls.Button类,在这种情况下next_btn变为null。
顺便说一下,按钮是反应鼠标悬停和单击事件正确,只是不会传递给上面的瑞士法郎。
有没有什么办法可以将Button事件传递给我的容器swf?
我给按钮名称 'next_btn的' 和改变的代码,以便: [嵌入(源= “../assets/next_button_as3.swf”,符号= “next_btn的”)] 我得到这些错误: 错误:定义找不到符号'next_btn' 错误:无法转码../assets/next_button.swf。 但我得到同样的错误,当我用next_button_as3.swf尝试它,我做错了什么? 我可以跟踪this.next_btn既SWF文件内,输出是这样: AS2 => _level0.next_btn AS3 => [对象next_button] – ekesken 2010-08-09 09:03:59
需要设置一个 “链接ID”,而不是一个实例名。 http://www.jessewarden.com/archives/flex/preloader/flash_preloader_03.gif – grapefrukt 2010-08-09 10:15:20
谢谢,我试过了,编译时没有错误。但“var next_btn:MovieClip = new nextButtonClass()as MovieClip;”代码这次将空值赋给next_btn变量。一个“新”运算符如何返回空值? – ekesken 2010-08-09 11:02:37