Flex 元件初始化順序

2021-06-16 14:43:49 字數 3408 閱讀 7074

在flex中,我們經常會用到,當容器或者這個元件初始化的時候,或者建立完成的時候,就去做一些事情。

那麼此時flex就會派發preinitialize、initialize和creationcomplete事件。當子項初始化完成後,其父容器開始初始化。即子項總是先於父容器初始化完成。然而,只有當所有子項的父容器都初始化完成後,子項才開始派發creationcomplete事件。

flex的preinitialize(預初始化)、initialize(初始化)、creationcomplete建立完成事件

**如下:

[html]view plain

copy

<?

xmlversion

="1.0"

encoding

="utf-8"

?>

<

s:panel

xmlns:fx

=""xmlns:s

="library:"

xmlns:mx

="library:"

width

="100%"

height

="100%"

<

span

style

="color:#ff0000;"

>

initialize

="panel1_initializehandler(event)"

span

>

<

span

style

="color:#ff0000;"

>

creationcomplete

="panel1_creationcompletehandler(event)"

span

>

title

=<

span

style

="color:#cc0000;"

>

preinitialize

="panel1_preinitializehandler(event)"

span

>

xmlns:utils

="com.tiamaes.utils.*"

minheight

="500"

minwidth

="700"

<

span

style

="color:#ff0000;"

>

updatecomplete

="panel1_updatecompletehandler(event)"

span

>

>

[html]view plain

copy

//initialize 

<

span

style

="color:#ff0000;"

>

執行順序 2

span

>

protected function panel1_initializehandler(event:flexevent):void  

//creationcomplete  <

span

style

="color:#ff0000;"

>

執行順序 3

span

>

protected function panel1_creationcompletehandler(event:flexevent):void  

//preinitialize <

span

style

="color:#ff0000;"

>

執行順序 1 

span

>

protected function panel1_preinitializehandler(event:flexevent):void  

//updatecomplete  <

span

style

="color:#cc0000;"

>

執行順序 4

span

>

protected function panel1_updatecompletehandler(event:flexevent):void    

對於單個元件來說,事件的執行順序就是:preinitialize,initialize,creationcomplete,updatecomplete

如果2個元件相互巢狀,那行執行順序就是:preinitialize先外後內,initialize和creationcomplete,updatecomplete先內後外。

如果2個元件是相互平行的關係,那行執行順序就是:前面元件initialize結束後,後面的元件才會丟擲preinitialize

《結束!>

flex

程式執行的過程中會觸發

preinitialize, initialize

和creationcomplete

事件,還會建立靜態成員變數和成員變數。它們的執行順序時怎樣的?

flex

程式的執行順序如下。

如果flex

使用了元件,那麼主程式和元件的

preinitialize, initialize

和creationcomplete

事件的先後順序又是怎樣的?

例如乙個程式有下面的結構

static member

member

testbox1

testbox2

那麼此程式的執行過程如下。

create static member

create member

testbox1 preinitialize

testbox1 initialize

testbox2 preinitialize

testbox2 initialize

testbox1 creationcomplete

testbox2 creationcomplete

事實上,

flex

中乙個元件的initialize

過程包括它的子元件的

preinitialize

和initialize

兩個過程。flex的乙個元件建立過程包括它的子元件的

建立過程

。tips:

如果你要在子元件的

initialize

響應函式中使用

的某個變數,你必須在

的preinitialize

響應函式中建立它或者直接在該變數定義時建立。

FLEX的初始化順序

from flex元件在建立的時候都會經歷四個事件 preinitialize initialize creationcomplete 和 updatecomplete updatecomplete事件在任何改動視覺的情況下都會發生,不是初始化時獨有的 下面的例子檢測在巢狀和平行的情況下,各個元件的...

FLEX的初始化順序

flex元件在建立的時候都會經歷四個事件 preinitialize initialize creationcomplete 和 updatecomplete updatecomplete事件在任何改動視覺的情況下都會發生,不是初始化時獨有的 下面的例子檢測在巢狀和平行的情況下,各個元件的事件丟擲順...

Flex 程式的初始化順序

flex程式執行的過程中會觸發 preinitialize,initialize 和 creationcomplete 事件,還會建立靜態成員變數和成員變數。它們的執行順序時怎樣的?flex 程式的執行順序如下。如果 flex 使用了元件,那麼主程式和元件的 preinitialize,initia...