·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3中层级深度排序源代码实例

时间:2015-06-03 08:31酷播
[AS3]as3中层级深度排序源代码实例

[AS3]as3中层级深度排序源代码实例

  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.     loaderArray[i] = new SWFLoader("flower.swf"); 
  7.     addChild(loaderArray[i]); 
  8.     loaderArray[i].x = Math.random() * 480; 
  9.     loaderArray[i].y = Math.random() * 360; 
  10.     loaderArray[i].name = "loader" + i; 
  11.     loaderArray[i].addEventListener(MouseEvent.MOUSE_DOWN, drag); 
  12.     loaderArray[i].addEventListener(MouseEvent.MOUSE_UP, drop); 
  13.     pushToArray(loaderArray[i]); 
  14.  
  15. function drag(e:MouseEvent) 
  16.     e.currentTarget.startDrag(); 
  17.  
  18. function drop(e:MouseEvent) 
  19.     e.currentTarget.stopDrag(); 
  20.     for (var j:uint = 0; j < ArrangeArray.length; j++) 
  21.     { 
  22.  
  23.         if (ArrangeArray[j].targetName == e.currentTarget.name) 
  24.         { 
  25.  
  26.             ArrangeArray[j].x = e.currentTarget.x; 
  27.             ArrangeArray[j].y = e.currentTarget.y; 
  28.         } 
  29.     } 
  30.     sortDepth(); 
  31.  
  32.  
  33. function pushToArray(source_target) 
  34.     ArrangeArray.push({targetName: source_target.name, y: source_target.y, x: source_target.x}); 
  35.  
  36.  
  37.  
  38. function sortDepth() 
  39.     ArrangeArray.sortOn(["y", "x"], Array.NUMERIC); 
  40.     for (var i:uint = 0; i < ArrangeArray.length; i++) 
  41.     { 
  42.         addChild(getChildByName(ArrangeArray[i].targetName)); 
  43.     } 
  44.  
  45. sortDepth(); 

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器