我正在尝试从作为主舞台的孩子的MovieClip控制我的Flash应用程序的主时间轴。显然,在ActionScript 2中,您可以使用_root执行此操作,但使用root(因为_root不再存在)现在会出错:

root.play();

" 1061:通过静态类型flash.display的引用调用可能未定义的方法:DisplayObjectContainer。“

使用Stage类也不起作用:

stage.play();

" 1061:通过静态类型flash.display的引用调用可能未定义的方法:Stage。“

有没有办法做到这一点?

有帮助吗?

解决方案

您需要将其投射到MovieClip

(root as MovieClip).play()

其他提示

根据 http:/ /www.adobe.com/cfusion/webforums/forum/messageview.cfm?forumid=15&catid=665&threadid=1387264&enterthread=y

尝试类似的东西     影片剪辑(根).gotoAndPlay(QUOT;菜单&QUOT);

祝你好运,
兰迪斯蒂鲍尔

另一种方法是在为主fla设置文档类时将movieclip代码分离为单独的类。

假设主fla的文档类是Main.as,而movieclip的类文件是Movie.as,可以在Movie类构造函数中添加Main类指针作为参数

在Main.as

public class Main(){   var m = new Movie(this); }

在Movie.as中

public class Movie(m:Main) { m.gotoAndPlay("somewhere"); }
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top