Actionscribpt 3:从Movieclip中将Movieclip从舞台移动到顶部

时间:2016-01-22 15:05:12

标签: actionscript-3

我目前正在尝试从AS2转换为AS3,我在深度管理方面遇到了一个小问题。我在舞台上有几个名为(Window_1,Window_2,...,Window_N)的MovieClip,它们还有几个子MovieClip。

问题是每个Window_X MovieClip都以相同的方式构建: Window_x - > UI_TopBar - > TopBar_MC。我正在尝试创建一个通用解决方案,通过单击TopBar_MC,整个Window_X MovieClip就会到达顶部。

有人知道我该怎么做吗?

非常感谢

2 个答案:

答案 0 :(得分:0)

只需致电stage.addChild(Window_N)即可。请参阅文档:DisplayObjectContainer.addChild

  

将一个子DisplayObject实例添加到此DisplayObjectContainer实例。子项将添加到此DisplayObjectContainer实例中所有其他子项的前面(顶部)。

答案 1 :(得分:0)

将显示对象移动到其父显示列表的顶部:

object.parent.setChildIndex(object, object.parent.numChildren - 1);

至于如何制作这个" universal",你可以使用一个链接到每个窗口符号的类,它将一个点击处理程序添加到执行从前到后行为的顶部栏: / p>

class Window extends MovieClip {
    public var topBar:MovieClip;
    public function Window() {
        topBar.addEventListener(MouseEvent.MOUSE_DOWN, topBarMouseDown);
    }
    private function topBarMouseDown(e:MouseEvent):void {
        parent.setChildIndex(this, parent.numChildren - 1);
    }
}