`root`在不同的地方变化

时间:2013-01-29 20:49:48

标签: actionscript-3 flash actionscript document-class

在ActionScript 3中,我read root变量引用了文档类的实例。

在我的文档类构造函数中,trace(this == root)返回true。稍后在构造函数中,调用另一个类的构造函数。但是,此构造函数指出rootnull。最后,从事件监听器进行跟踪可以得到root[object Stage]的结果。

我的目标是拥有一个文档类的实例(在MainGame.as中)并且能够在我的ActionScript程序中将其称为(root as MainGame)。我怎么能这样做?

如果重要,我的所有代码都在默认包中。

谢谢!

1 个答案:

答案 0 :(得分:5)

root DisplayObject的{​​{1}}一旦DisplayObject添加到显示列表,就会成为对文档类的引用。您可以继续使用root但请注意,只有显示列表中的对象才有效。

You can read more about root here

  

Stage对象的root属性是Stage对象本身。对于尚未添加到显示列表的任何显示对象,root属性设置为null,除非它已添加到显示列表之外的显示对象容器中,但是它是最顶层显示对象的子容器加载的SWF文件。