天天看點

[Flex 2] 04 容器群組件

/// 前面的幾乎都是在抄書,是要改一下了

Tips:

1、Flex Builder項目或ActionScript項目會作為一個容器,容納所有資産。資産即項目運作所需的各種各樣的檔案(MXML、AS、圖檔和XML等)。Flex Builder會為我們跟蹤這些不同的資産,故Flex Builder要求我們隻能在項目内建立或導入這些資産。

2、通常隻有一個MXML檔案,它充當着通往其他所有檔案的“關口(gateway)“。因為它是使用者定位到網站時出現的檔案,故類似标準Web設計的index.htm檔案。

3、建議不要修改主檔案輸出目錄bin,否則大量測試能力将會喪失;但如果需要在一個不同目錄結構的伺服器上測試,就需要修改此目的地。

################

# 主應用程式檔案

################

      應用程式從起始Application标簽開始,然後以結尾Application标簽退出;其他所有事情必須直接或間接發生在兩标簽之間。

      每個Flex項目都應隻有一個含有Application标簽的檔案,即主應用程式檔案(main application file)。

      如把項目比作交響樂團,則Application标簽就是指揮者。沒有他發号施令,一切都不會發生。

      (Application标簽類似于Java、C++、C#.NET中的主方法(main method),在Flash中類似于主時間軸。)

    Flex目的在于呈現資料(呈現伺服器),其應用程式通過在容器内的容器裡建立容器來建構。可把标簽看成最外面的容器或說主容器,所有其他容器都放在此容器内。(此概念類似于Java建構其使用者界面的方式)

      所有Flex錯誤可歸結為兩類:編譯錯誤(compiler error)、運作時錯誤(runtime error)。在大多數程式中,編譯指把編寫的代碼轉變成計算機處理器可輕松讀取的二進制檔案。不過在Flex中(如Flash中),它把代碼轉變為SWF(small web format,小Web格式)檔案。

      常用布局容器(共16個):

    * HBox: 從左到右水準擺放子控件;

    * VBox: 從上到下居中擺放子控件;

    * Canvas: 使用絕對布局,故必須指定x、y屬性。

    * Panel: 可作HBox、VBox或Canvas,且具有一可添加文本的标題欄區域。

    * Tile: 以垂直列或水準行排列子控件,且每個單元格大小相同。且同Panel一樣,亦有一标題欄區域。

    * ApplicationControlBar: 可VBox,可HBox。可把要影響整個應用程式的元件放在此容器。它常聲明于Application标簽右邊,通過使用dock屬性,該容器會以應用程式完整寬度停駐在應用程式頂部。

    * ControlBar: 可VBox,可HBox。可作工具欄停靠在Panel容器底部。

      每個容器都有一個内置的布局管理器(layout manager),此管理器會處理其内元件擺放位置。

    (檢視容器可能用法:Help --> Flex Start Page --> Flex Component Explorer - Run)

################

# 資料綁定

################

      資料綁定(data binding)即把資料綁定到“資料使用者”身上。

    Flex 2大大提高了AS變量與MXML标簽的互動能力,但在變量能與标簽充分互動之前,須訓示變量使用這些能力。故用名為[Bindable]的Flex元标簽來賦予變量此項能力。

################

# 元件

################

    /// 重視元件!

      很多元件需與其他元件互動,故元件檔案的實體位置不應四處移動。取而代之,我們會建立由項目到所需元件的連結。我們要建立一個目錄結構來存放元件,并對它們進行分類。大多數程式設計環境把這些目錄稱為包。

      ("File" -> "New" -> "MXML Component")

      命名空間(namespace)方法:給路徑起一簡單名字,則每次使用該名字時,程式便知在引用那個路徑。應使用xmlns屬性加冒号(:)再加路徑名稱方式在Application标簽内定義命名空間。

      (Application标簽内已有一個xmlns命名空間,它用來驗證MXML代碼的有效性。我們可在标簽内定義多個命名空間)

      例:xmlns:comp="Components.Form_Component"

            元件内的變量(屬性)可以在調用元件時以參數傳遞方式更改。同時亦可從元件接收參數,前提是給元件一個唯一的ID。

<--End-->

繼續閱讀