flex addChild 的一个小细节

flex addChild 的一个小细节

关键字: flex, addchild

 

如果addChild的参数是别的容器的child, 那么这个child就会被"移动"(即先从就容器中removeChild掉,然后在addChild到新容器中,没必要自己去removeChild)到新的容器里

 

 

Java代码 复制代码
  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal"  
  3.     width="800"  
  4.     height="600"  
  5.     creationComplete="init()">   
  6.     <mx:Script>   
  7.         <![CDATA[   
  8.             import mx.controls.Label;   
  9.             private var lab:Label = new Label();   
  10.             private function init():void  
  11.             {   
  12.                 lab.text = "I am a label";   
  13.                 c1.addChild(lab);   
  14.             }   
  15.                
  16.             private function onClick(event:MouseEvent):void  
  17.             {   
  18.                 if(event.currentTarget == c1 &&lab.parent != c1)   
  19.                 {   
  20.                     c1.addChild(lab);   
  21.                 }   
  22.                 if(event.currentTarget == c2 &&lab.parent != c2)   
  23.                 {   
  24.                     c2.addChild(lab);   
  25.                 }   
  26.             }   
  27.         ]]>   
  28.     </mx:Script>   
  29.     <mx:Canvas id="c1" width="50%" height="100%" backgroundColor="blue" click="onClick(event)"/>   
  30.     <mx:Canvas id="c2" width="50%" height="100%" backgroundColor="red" click="onClick(event)"/>   
  31. </mx:Application> 

posted on 2010-06-18 09:19  jiahuafu  阅读(253)  评论(0编辑  收藏  举报

导航