快速业务通道

mc深度的排序值设置方法

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-10

mc电影符号设置深度值的方法

在程序的过程,我们会常换多个mc深度,让它叠在上边。flash给我提供只有:两个mc深度的互换,却没有设置深度值的方法.

本人设计了一个方法,就是可以设置mc深度的排序值。不过前提就是这些mc已级把深度排序好,放在一个数组里。这个没有什么问题。

我们在程序生成的时候,完全可以做到一点。试试吧。





Flash: a 全屏浏览

代码如下:

//电影符号深度从小到大
var arr:Array = [mc4, mc3, mc2, mc1];
//setDepth (mc:要指定深度的电影符号,位置(注:从0开始), 排序数组)
function setDepth (mc:MovieClip, num:Number, arr:Array)
{
//找到设置深度mc的位置
var numI:Number = 0;
for (var i = 0; i < arr.length; i++) {
if (arr[i] == mc) {
numI = i;
break;
}
}
//移位并用mc.swapDepths()换深度
if(numI>num){
for(var i=numI;i>0;i--){
trace("i"+i)
arr[i].swapDepths(arr[i-1])
var mcTem:MovieClip=arr[i]
arr[i]=arr[i-1]
arr[i-1]=mcTem
}
}else if(numI<num){
for(var i=0;i<numI;i++){
arr[i].swapDepths(arr[i+1])
var mcTem:MovieClip=arr[i]
arr[i]=arr[i+1]
arr[i+1]=mcTem
}
}
}
//smallerbird 2008-5-9
//flash原创代码尽在 www.webjx.com

bt1.onRelease = function ()
{
trace(_root.arr)
setDepth (_root.mc1, 0, _root.arr);
trace(_root.arr)
};
bt2.onRelease = function ()
{
setDepth (_root.mc2, 0, _root.arr);
};
bt3.onRelease = function ()
{
setDepth (_root.mc3, 0, _root.arr);
};
bt4.onRelease = function ()
{
setDepth (_root.mc4, 0, _root.arr);
};

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号