Actionscript 3 从Flash访问未定义属性到Flashbuilder
搜索了一会儿,但我在堆栈上找不到答案,所以我希望有人能帮助我 我尝试了Flash prof CS6和Flashbuilder,我在Flash中创建了一个名为square_mc的Movieclip,并用square的名称对其进行了实例化 我已将名为Main.as的类文件链接到FLash builder,并在FLash builder中写入:Actionscript 3 从Flash访问未定义属性到Flashbuilder,actionscript-3,flash,flashbuilder4,Actionscript 3,Flash,Flashbuilder4,搜索了一会儿,但我在堆栈上找不到答案,所以我希望有人能帮助我 我尝试了Flash prof CS6和Flashbuilder,我在Flash中创建了一个名为square_mc的Movieclip,并用square的名称对其进行了实例化 我已将名为Main.as的类文件链接到FLash builder,并在FLash builder中写入: package { import flash.display.MovieClip; import flash.events.MouseE
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
{
public function Main()
{
super();
circle.addEventListener(MouseEvent.CLICK, onToolClick);
}
function onToolClick(event:MouseEvent):void{
trace("klickade på ontoolclick");
}
}
}
在Flash builder中,我收到警告“访问未定义的属性圈”
但当我运行它时,它就像一个符咒
我猜这只是因为Flashbuilder不知道我已经用Flash中的名称circle实例化了它,因此给出了警告
有什么方法可以让Flashbuilder了解它的存在和工作吗?选项1:
为了解决这个问题,我通常在FlashCS6的ActionScript设置(文件>ActionScript设置)中取消选中“自动声明阶段实例”。然后在Flash Builder中,在Flash CS6中声明您在舞台上的电影剪辑:
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
{
public var circle:MovieClip; // manually declare circle
public function Main()
{
super();
circle.addEventListener(MouseEvent.CLICK, onToolClick);
}
function onToolClick(event:MouseEvent):void{
trace("klickade på ontoolclick");
}
}
}
选项2:
如果您不想手动声明舞台上的所有电影,选项2是创建对circle的引用,作为Flash Builder的单独变量:
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends MovieClip
{
private var _circle:MovieClip;
public function Main()
{
super();
_circle = this.getChildByName( "circle" ) as MovieClip;
_circle.addEventListener(MouseEvent.CLICK, onToolClick);
}
function onToolClick(event:MouseEvent):void{
trace("klickade på ontoolclick");
}
}
}
这应该可以阻止Flash Builder向您发送错误消息:)非常感谢,谷歌搜索了更多关于“自动声明阶段实例”的信息,选项1似乎是一个很好的答案。顺便说一句,当我尝试从库中获取movieclips(如“shape=new star_mc()”,因为它直到运行时才找到star_mc。对于这些链接项,我建议使用SWC文件。可以使用所有链接符号创建库fla,并在“发布设置”中检查swc导出。然后在当前项目中参考Flash Builder和Flash Pro中的swc。保持事物整洁:)