智慧 + 毅力 = 无所不能

正确性、健壮性、可靠性、效率、易用性、可读性、可复用性、兼容性、可移植性...

导航

深度排序

Posted on 2009-11-20 17:05  Bill Yuan  阅读(285)  评论(0编辑  收藏  举报
 1 import SWFLoader;
 2 var loaderArray:Array = new Array();
 3 var ArrangeArray:Array = new Array();
 4 
 5 for (var i = 0; i < 50; i++)
 6 {
 7     loaderArray[i] = new SWFLoader("flower.swf");
 8     addChild(loaderArray[i]);
 9     loaderArray[i].x = Math.random() * 480;
10     loaderArray[i].y = Math.random() * 360;
11     loaderArray[i].name = "loader" + i;
12     loaderArray[i].addEventListener(MouseEvent.MOUSE_DOWN, drag);
13     loaderArray[i].addEventListener(MouseEvent.MOUSE_UP, drop);
14     pushToArray(loaderArray[i]);
15 }
16 
17 function drag(e:MouseEvent)
18 {
19     e.currentTarget.startDrag();
20 }
21 
22 function drop(e:MouseEvent)
23 {
24     e.currentTarget.stopDrag();
25     for (var j:uint = 0; j < ArrangeArray.length; j++)
26     {
27 
28         if (ArrangeArray[j].targetName == e.currentTarget.name)
29         {
30 
31             ArrangeArray[j].x = e.currentTarget.x;
32             ArrangeArray[j].y = e.currentTarget.y;
33         }
34     }
35     sortDepth();
36 }
37 
38 
39 function pushToArray(source_target)
40 {
41     ArrangeArray.push({targetName: source_target.name, y: source_target.y, x: source_target.x});
42 }
43 
44 
45 
46 function sortDepth()
47 {
48     ArrangeArray.sortOn(["y""x"], Array.NUMERIC);
49     for (var i:uint = 0; i < ArrangeArray.length; i++)
50     {
51         addChild(getChildByName(ArrangeArray[i].targetName));
52     }
53 }
54 
55 sortDepth();