为什么即使在设置了类路径(AS3)之后,Flash CS3也找不到MovieClip基类?

时间:2009-11-06 05:06:55

标签: flash actionscript-3 class base cs3

撕掉我的头发。 我创建了一个as3类 - blah.Foo,它扩展了MovieClip。 它不在一个包中,因为Flash CS3抱怨嵌套包,所以它是一个'裸'类。

是的,它嵌套在 myproj / as / blah / Foo.as 中 是的,它会在文件顶部导入flash.display.MovieClip。

我也有 myproj / fla / main.fla 。 main.fla设置为针对Flash player 9发布为AS3。 main.fla有classpath,包括myproj / as /

在main.fla中的frame1 scene1上:

import blah.Foo;
var myfoo:Foo = new Foo();
stop();

编译器在Foo.as中的Foo类定义中死掉:

import flash.display.MovieClip;
class blah.Foo extends MovieClip //<=== dies here
{
    //whatever...
}

它抱怨说: “1017:找不到基类MovieClip的定义”。

有人请帮忙!怎么能找不到AS3中最基本的课程之一?!!

2 个答案:

答案 0 :(得分:2)

Actionscript 3.0不像AS2那样工作

试试这个

package blah
{
    import flash.display.Movieclip;

    public class Foo extends MovieClip
    {
    ...

have a read

希望这会有所帮助。

答案 1 :(得分:0)

记住:

  • 虽然ECMAScript中尚未实现私有类,但在包外部声明一个类使其“行为”就像一个类。因此,您的问题是从主文档访问该类。

  • 进入包后,您应该指定您希望如何访问该类。使用'public'修饰符声明您的课程将允许从包外部访问您的课程。

R〜