生成的Flash效果显示在顶层对象的顶部

时间:2011-05-27 00:26:09

标签: flash actionscript-2 flash-cs5

我用链接教程创建了“雪”效果,基本上它操纵画布上对象的实例,并在动画加载的动作中调用脚本。

但是,我无法将生成的雪显示在画布上的任何其他对象后面。

http://www.kirupa.com/developer/mx/snow.htm

enter image description here

您可以从图像中看到RedBox和Border图层位于SnowFlakes图层上方,我希望它们在前面。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

Flash的DisplayList作为没有空值的数组运行。如果显示列表上有10个不同的显示对象,则每个显示对象将填充索引位置0-9。 0将占据最低层,最多9层,它将浮动在其他所有层上。

因此,要将SnowFlakes图层置于其他所有图层之下,您需要确保它位于索引0处,或者至少低于其他所有图层,在这种情况下是红色框和边框。

如何将“snowfake”对象添加到显示列表中?确保将薄片添加到正确的显示对象中:

var flake:SnowFlake = new SnowFlake();
SnowFlakeLayer.addChild(flake); 

并且该对象位于右侧

addChildAt(SnowFlakeLayer,0);

我没有查看教程,你没有发布任何代码,但我猜你没有正确地将片状片添加到SnowFlakeLayer。假设其他所有内容都正确分层,那就是你的问题。

答案 1 :(得分:0)

在actionscript 2.0中你可以查看movieClip的深度代码,我唯一知道的就是movieClip.swapDepth(mc2);你可以让mc2成为整个动画中最高(最顶层)的影片剪辑..但我确信谷歌你会找到一些动作脚本2.0的深度代码,你可以把它放在上面而不用其他东西交换它的深度。