2009-11-06 29 views
1

把我的头发撕掉。 我创建了一个as3类 - blah.Foo,它扩展了MovieClip。 它不在包中,因为Flash CS3抱怨嵌套包,所以它是一个“裸”类。即使设置了类路径(AS3),为什么Flash CS3不能找到MovieClip基类?

而且是它的嵌套在的Myproj /为/胡说/ Foo.as 是的,它进口的flash.display.MovieClip在文件的顶部。

我也有myproj/fla/main.fla。 main.fla也被设定到AS3发布针对闪存播放器9. main.fla具有类路径,其包括的Myproj/AS/

上帧1 SCENE1在main.fla:

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

编译器死在类在Foo.as美孚的定义:

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

它抱怨说: “1017:基类影片剪辑的定义没有被发现。”

有人请帮忙!它如何找不到AS3中最基本的类之一?

回答

2

ActionScript 3.0中不起作用像AS2

试试这个

package blah 
{ 
    import flash.display.Movieclip; 

    public class Foo extends MovieClip 
    { 
    ... 

have a read

希望这会有所帮助。

+0

感谢keyle ...添加程序包的“路径”,以包语句,而不是类定义似乎已经得到了Flash CS3中过去那个驼背......耶!所以现在我有一大堆其他的错误...会看到,如果我清除这些问题,这个问题是真正解决的...... – helpless 2009-11-06 05:42:02

0

记住:

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

  • 一旦进入包装内,您应该指定您希望如何访问该类。使用'public'修饰符声明你的类将允许从包之外访问你的类。

R〜

+0

非常感谢,雷伊。我真的不知道它相当于私人...... – helpless 2009-11-06 06:36:37

相关问题