在Flash CS5中我得到了 1195:通过具有静态类型Doc的引用尝试访问不可访问的方法testFunc 在编译时无法理解我已经彻底煮熟的情况。
MyDoc.as - 我的文档类。
package {
import flash.display.MovieClip;
public class MyDoc extends MovieClip {
public function MyDoc() {}
public function myOtherFunc() : void {}
public function myFunc() : void {}
}
}
MyClass.as - 链接到一帧影片剪辑,没有代码只包含TLF文本框。
package {
import flash.display.MovieClip;
public class MyClass extends MovieClip {
public function MyClass( myDoc : MyDoc ) {
myDoc.myFunc();
}
}
}
这就是我的FLA的范围 - 一个电影剪辑。空荡荡的舞台,单帧没有代码就可以了。
让我感到困惑的是,如果我将看似无关的TLF文本框从等式中取出,可以通过将其更改为经典文本框,删除它或取消链接其包含的MC来实现无错编译。 MyClass的。
我也可以通过删除myOtherFunc()的定义或将它移到myFunc()下面来消除错误,我必须做几次才能说服自己这是真的。
关于发生了什么的任何想法?
更新:我刚刚在朋友的CS5版本上确认了相同的行为。他使用Mac而不是我的Windows设置,他只安装了CS5版本,而我同时拥有CS5和CS4。这看起来好像是一个Flash bug ......
答案 0 :(得分:3)
您可能需要在源路径http://labs.adobe.com/downloads/textlayout.html
中包含textLayout.swc注意:成功的答案在评论中