0

您可以从子类中将影片剪辑添加到舞台吗?我的设置如下:

DocumentClass
->SubFolder
--->ChildClass1
--->ChildClass2

DocumentClass 调用 ChildClass1 并创建它的一个实例。ChildClass1 在其构造函数中调用了 ChildClass2 并创建了它的一个实例。

将作为 MoveClip 的类 ChildClass2 添加到舞台的最干净的方法是什么?到目前为止,我尝试过的方法是:

parent.addChild(ChildClass2)

在 DocumentClass 的构造函数调用中将舞台对象发送到 ChildClass1。然后:

stage.addChild(ChildClass2)

这些是唯一的方法,还是有其他方法不需要依赖其他文件来将 MovieClip(ChildClass2) 添加到舞台?

编辑:我正在使用 AS3 和 Flash CS5

Edit2:到目前为止,唯一对我有用的解决方案是将阶段传递给 ChildClass 一,然后调用 stage.addChild()。

4

1 回答 1

2

在您的 ChildClass1 实例中,创建您的 ChildClass2 实例(如果我正确地遵循),您可以这样做:

addChild(childClass2Instance);

这会将它添加到舞台上。我不明白为什么您需要将其复杂化,尽管当然如果您希望对象位于 Document 类的坐标空间内,那么parent.addChild();应该按照您的意愿进行操作。我不确定您是说这两种解决方案不起作用,还是您只是在寻找其他可能性。

不过,在回答您的第一个问题(“您可以从子类向舞台添加影片剪辑吗?”)时,您可以,只需执行 addChild。它仍然是舞台,即使它是一个子对象的坐标空间。

我想您可以创建一个自定义事件,一旦您的 ChildClass1 的构造函数完成其职责(我猜其中一个是创建 ChildClass2 实例),它将被 Document 类监听,并在检测到事件时添加对象它接收到舞台。如果您希望我说明您将如何做到这一点,我可以查看一些代码,但现在我无法想象它甚至会给您带来什么优势。

无论如何,希望至少其中一些有所帮助!

得不

于 2010-08-05T20:53:26.437 回答