flex 执行顺序

preloader->systemManager->FlexApplication started…
然后才是

preinitialize
在所有的初始化之前触发,没有子组件的定义,但是可以引用组件的变量.

initialize
当所有子组件生成完成后触发,在这个时间点还没有组件被渲染出来.

creationComplete
组件定义完成并已经在显示列表.

applicationComplete
所有的组件初始化完成并显示.

 

测试:

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
 creationComplete="{Report(event,'creationComplete')}"
 initialize="{Report(event,'initialize')}"
 applicationComplete="{Report(event,'applicationComplete')}"
 preinitialize="Report( event , 'preinitialize' )"
 layout="absolute">
 <mx:Script>
  <![CDATA[
   import flash.utils.getTimer;
   [Bindable]
   public var outputtxt:String='';
   
   public function Report(e:Event,value:String):void
   {
    outputtxt +=String(flash.utils.getTimer())+'>>'+e.currentTarget+value+'\n';
    
   }
  ]]>
 </mx:Script>
 <mx:Script source="main.as"/>
 <mx:Canvas id="m_Toolbar" width="100%" visible="true" height="100%">
  <mx:TextArea text="{outputtxt}"  x="81" y="101" width="385" height="84"/>
  <mx:Button x="176" y="193" creationComplete="{Report(event,'Button:creationComplete')}" label="Button"/>
 </mx:Canvas>
</mx:Application>

你可能感兴趣的:(xml,Flex,Flash,Adobe)