现在的位置: 首页 > 综合 > 正文

Flex加载

2012年10月22日 ⁄ 综合 ⁄ 共 1067字 ⁄ 字号 评论关闭

     Flex生成的swf是个2帧的MovieClip,第一帧包括文档类SystemManager与加载器Preloader,第二帧是项目Application.
SystemManager是在应用程序中创建的第一个显示类,它负责创建要显示的mx.preloaders.Preloader以及应用程序完成加载时显示的mx.preloaders,SparkDownloadProgressBar,然后创建mx.core.Application实例。

      SystemManager
类管理应用程序窗口。桌面上或浏览器中运行的每个应用程序中都有一个区域,用于显示应用程序的可视部分。该区域可能是操作系统中的某个窗口,也可能是浏览器中的某个区域。此区域是一个不同于
mx.core.Application
实例的应用程序窗口,前者是应用程序中的主窗口(即顶级主窗口)。

每个应用程序都包含一个
SystemManager。如果应用程序窗口的大小发生更改(您无法在应用程序中更改其大小,只能通过与操作系统窗口或浏览器交互来进行更改),则
SystemManager 会发送一个事件。它是应用程序中所有可显示项目(例如 mx.core.Application
主实例以及所有弹出窗口、工具提示、光标等)的父项。任何以 SystemManager 作为父项的对象都将被视为“顶级”窗口,就连工具提示和光标也是如此。

如果显示有多个 IFocusManagerContainer,并且用户正在与 IFocusManagerContainers 中的组件进行交互,则
SystemManager 还可以在顶级窗口之间切换焦点。

使用 SystemManager 可以查看所有并非显式捕获的键盘和鼠标活动,所以,如有必要,可以使用它来监视活动。

在将某个应用程序加载到另一个应用程序时,虽然仍会创建
SystemManager,但是根据安全性和域规则,将不会使用它来管理“应用程序窗口”。而将作为加载它的 Loader

content
,只是充当子应用程序的父级。

SystemManager
可维护多个子项列表,工具提示、光标、弹出窗口各有一个列表。因此,它可以确保弹出窗口“浮”在主应用程序窗口上方,工具提示“浮”在弹出窗口上方,光标“浮”在工具提示上方。如果只对
SystemManager 检查 numChildren
属性或调用 getChildAt()

方法,则需要访问主应用程序窗口以及其他任何没有弹出的窗口。要获得所有窗口(包括弹出窗口、工具提示和光标)的列表,请使用
rawChildren
属性。

抱歉!评论已关闭.