在 class 路径中找不到 flash class 定义

flash class definition not found in classpath

当我尝试验证符号中的 class 定义时,它说无法在 class 路径中找到 class 定义。

我检查过的东西(几次):

该文件与 FLA 位于同一文件夹中, 它的名字与 class 相同, 对象链接与 class 同名, 源路径只有一个条目 是 "."

我的密码是

package  {

import flash.display.MovieClip;


public class homeGenListButton extends MovieClip {


    public function homeGenListButton() {
        // constructor code
        trace("here");
        //var txtField:TextField = this.getChildByName("GenListTxt");
        //txtField.text = "text2";


    }
}

}

我正在使用 action script 3,配合 flash professional CS6。 错误的图像 image

更新: 根据您的图片,问题出在 class 名称和继承中,这有点冲突,因为...好吧,我不能确定,但​​是当您开始以这种方式混合 classes 时,它很多最好在 FlashDevelop 中开始开发。

然而,我能够解决你的问题,但采用了不同的方法:

  1. 将您的 class 保留为 .as package/file,从 MovieClip 扩展它并以不同的方式命名,假设 homeGenListButtonProto:
package  {
  import flash.display.MovieClip;
  public class homeGenListButtonProto extends MovieClip {
       public function homeGenListButtonProto() {
          trace('well hello!');
       }
  }
}
  1. 现在,在 Flash 库中添加按钮 class 时,使用 homeGenListButton 作为 class 名称,使用 homeGenListButtonProto 作为基础 class(而不是 flash.display.Movieclip)。它会那样工作。实际上,homeGenListButton(在库中)扩展了 homeGenListButtonProto(在 .as 文件中),后者扩展了 MovieClip。不是一个非常优雅的解决方案,但恐怕没有其他方法,除非你开始使用 FlashDevelop。