Flex公司專屬應用程式開發實踐學習筆記(七)——Flex Application

來源:互聯網
上載者:User

SystemManager:

       SystemManager是Flex應用的主控者,它控制著應用視窗、Application執行個體、快顯視窗和cursors,並管理者ApplicationDomain中的類。Systemmanager是FlashPlayer執行個體化的第一個類,它儲存了主視窗的大小和位置資訊,儲存其子組件,比如浮動快顯視窗和模態視窗的痕迹。通過SystemManager可以獲得內嵌字型、式樣和document對象。

Flex中以Application標記為根的MXML檔案在編譯後會產生SWF檔案,這種Flex應用的SWF檔案只包含兩幀。

【第一幀】包含SystemManager、Preloader、DownloadProgressBar和少量的工具類,這個幀是輕量的,所以他幾乎可以立即下載運行。只要接收到第一幀內足夠的資料,就會執行個體化SystemManager,由它來建立Preloader。然後建立DownloadProgressBar,用來顯示應用載入的進度指示。

【第二幀】包含應用代碼和內嵌資源。

       當第一幀中的SystemManager對象初始化完畢後,會建立一個進度條,用來顯示兩個不同階段的資訊:資料下載階段和資料初始化階段。

Preloader:

Preloader就是這樣一個類,它負責監聽Application,RSL和模組的下載和初始化進程的狀態,包括對下載的監聽,並根據下載的狀態產生相應的初始化進程事件。

【FlexEvent.INIT_PROGRESS】

【FlexEvent.INIT_COMPLETE】

【FlexEvent.IPROGRESS】

【FlexEvent.COMPLETE】

Preloader雖然發布初始化事件,但是並不直接顯示初始化過程,而是把顯示工作交給一個顯示類來完成,我們稱這個類為載入顯示類。SystemManager在自己的initialize方法中會調用Preloader的initialize方法。並把顯示類的類名作為參數傳遞給Preloader。在預設情況下,這個類被SystemManager指定為DownloadProgressBar(預設進度條);


Application的作用和主要屬性

pageTitle:網頁標題(這個屬性設定的內容將顯示到瀏覽器的標題列中)。

preloader:它設定的內容是Application預先載入過程顯示類的類名,如果不設定這個屬性,它的預設值就是mx.preloaders.DownloadProgressBar。

usePreloader: 這個屬性是用來控制是否顯示預先載入過程。預先載入過程是不可能跳過的,能夠控制的只能是是否顯示這個過程,這個屬性的預設值是true,如果沒有特殊情況,建議保留預設值。

application:這是Application類的一個靜態屬性,它指向最上層的應用。在一個Application中,所有組件都可以通過parentApplication來擷取自己的父應用。

parentApplication屬性指向的是組件最近的最直接的父應用,而Application.application則是最頂端的應用。

url:這個屬性指出當前Application是哪個SWF載入的環境中,或者說SWF檔案被載入的完整路徑,包括網域名稱+網站名+SWF檔案在網站中的路徑+參數+其他。其中的“其他”是指Flash Player增加的一些額外參數。SWF的載入路徑對公司專屬應用程式來說是一個很有用的屬性,可以通過應用路徑來控制許可權或者希望得到伺服器的地址和網站的名字,或者擷取頁面參數。

parameters:就是網頁中的參數。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.