mx.managers
Interfacepublic interface ISystemManager extends IEventDispatcher , IChildList , IFlexModuleFactory
实现器 SystemManager, WindowedSystemManager

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

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

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

所有未显式捕获的键盘和鼠标活动对 ISystemManager 都是可见的,因此,可以使用它来监视本应由您监视的活动。

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

ISystemManager 可维护多个子项列表,工具提示、光标、弹出窗口各有一个列表。因此,它可以确保弹出窗口“浮”在主应用程序窗口上方,工具提示“浮”在弹出窗口上方,光标“浮”在工具提示上方。若要对 ISystemManager 检查 numChildren 属性或 getChildAt() 方法,则需要访问主应用程序窗口以及其它任何没有弹出的窗口。要获得所有窗口(包括弹出窗口、工具提示和光标)的列表,请使用 rawChildren 属性。



公共属性
 属性定义方
  cursorChildren : IChildList
[] 使用此 ISystemManager 作为父项的自定义光标的列表。
ISystemManager
  document : Object
对文档对象的引用。
ISystemManager
  focusPane : Sprite
在各组件之间共享的单个 Sprite,用作绘图焦点的叠加层。
ISystemManager
  loaderInfo : LoaderInfo
[] 提供应用程序相关信息的 LoaderInfo 对象。
ISystemManager
 InheritednumChildren : int
[] 此子级列表中的子项数。
IChildList
  numModalWindows : int
模式窗口的数量。
ISystemManager
  popUpChildren : IChildList
[] 将使用此 ISystemManager 作为父项的最顶级窗口(弹出窗口)的列表。
ISystemManager
  rawChildren : IChildList
[] 使用此 ISystemManager 作为父项的所有子项的列表。
ISystemManager
  screen : Rectangle
[] 应用程序窗口的大小和位置。
ISystemManager
  stage : Stage
[] 代表映射到此 SystemManager 中的应用程序窗口的 flash.display.Stage。
ISystemManager
  toolTipChildren : IChildList
[] 将使用此 ISystemManager 作为父项的工具提示的列表。
ISystemManager
  topLevelSystemManager : ISystemManager
[] 负责应用程序窗口的 ISystemManager。
ISystemManager
公共方法
 方法定义方
  
激活 IFocusManagerContainer 中的 FocusManager。
ISystemManager
 Inherited
在此子项列表的末尾添加一个子 DisplayObject。
IChildList
 Inherited
在此子级列表的指定索引处添加子 DisplayObject。
IChildList
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
IEventDispatcher
  
注册一个包含 FocusManager 的顶级窗口。
ISystemManager
 Inherited
确定 DisplayObject 是否在此子级列表中,或是否为此子级列表中的子项的后代。
IChildList
 Inherited
create(... parameters):Object
factory 方法,要求定义的实例是模块已知的。
IFlexModuleFactory
  
取消激活 IFocusManagerContainer 中的 FocusManager,并激活下一个最高层 IFocusManagerContainer 窗口中的 FocusManager。
ISystemManager
 Inherited
将事件调度到事件流中。
IEventDispatcher
 Inherited
获取此子级列表中指定索引处的子 DisplayObject。
IChildList
 Inherited
获取此子级列表中具有指定名称的子 DisplayObject。
IChildList
 Inherited
获取此子级列表中特定子项的索引。
IChildList
  
将给定的 String 转换为 Class 或数据包级的 Function。
ISystemManager
 Inherited
返回位于子级列表中指定点下方的 DisplayObject 的数组。
IChildList
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
IEventDispatcher
 Inherited
返回包含模块已知的静态数据的键/值对块。
IFlexModuleFactory
  
如果所需的字体已嵌入到此应用程序中,或已使用 Font.registerFont() 方法进行了全局注册,则返回 true。
ISystemManager
  
如果此 ISystemManager 负责应用程序窗口,则返回 true;如果此应用程序已加载到其它应用程序中,则返回 false。
ISystemManager
 Inherited
从此子级列表中删除指定的子 DisplayObject。
IChildList
 Inherited
从此子级列表中删除指定索引处的子 DisplayObject。
IChildList
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
IEventDispatcher
  
取消注册包含 FocusManager 的顶级窗口。
ISystemManager
 Inherited
更改此子级列表中特定子项的索引。
IChildList
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
IEventDispatcher
属性详细信息
cursorChildren属性
cursorChildren:IChildList  []

使用此 ISystemManager 作为父项的自定义光标的列表。

ISystemManager 包含各种类型的子项,例如应用程序、弹出窗口、顶级窗口、工具提示和自定义光标。您可以通过 cursorChildren 属性访问自定义光标。

IChildList 对象具有类似于 getChildAt() 的方法和类似于 numChildren 的属性。例如,cursorChildren.numChildren 可提供自定义光标数目(可以是 0,也可以是 1);如果存在自定义光标,您可以将其当作 cursorChildren.getChildAt(0) 进行访问。


实现
    public function get cursorChildren():IChildList
document属性 
document:Object  []

对文档对象的引用。文档对象是位于 Flex 应用程序、MXML 组件或 AS 组件层次结构顶层的 Object。


实现
    public function get document():Object
    public function set document(value:Object):void
focusPane属性 
focusPane:Sprite  []

在各组件之间共享的单个 Sprite,用作绘图焦点的叠加层。如果您有具有焦点的子项组件,则可以共享它;如果您是 IFocusManagerComponent,则不能共享它。


实现
    public function get focusPane():Sprite
    public function set focusPane(value:Sprite):void
loaderInfo属性 
loaderInfo:LoaderInfo  []

提供应用程序相关信息的 LoaderInfo 对象。


实现
    public function get loaderInfo():LoaderInfo
numModalWindows属性 
numModalWindows:int  []

模式窗口的数量。

模式窗口不允许在其它窗口中单击,因为这通常会激活该窗口中的 FocusManager。PopUpManager 在创建和销毁模式窗口时会修改此计数。


实现
    public function get numModalWindows():int
    public function set numModalWindows(value:int):void
popUpChildren属性 
popUpChildren:IChildList  []

将使用此 ISystemManager 作为父项的最顶级窗口(弹出窗口)的列表。

ISystemManager 包含各种类型的子项,例如应用程序、弹出窗口、工具提示和自定义光标。您可以通过 popUpChildren 属性访问最顶级窗口。

IChildList 对象具有类似于 getChildAt() 的方法和类似于 numChildren 的属性。例如,popUpChildren.numChildren 可提供最顶部窗口的数量,您可将最顶部窗口当作 popUpChildren.getChildAt(i) 进行访问。


实现
    public function get popUpChildren():IChildList
rawChildren属性 
rawChildren:IChildList  []

使用此 ISystemManager 作为父项的所有子项的列表。

ISystemManager 包含各种类型的子项,例如应用程序、弹出窗口、工具提示和自定义光标。

IChildList 对象具有类似于 getChildAt() 的方法和类似于 numChildren 的属性。


实现
    public function get rawChildren():IChildList
screen属性 
screen:Rectangle  []

应用程序窗口的大小和位置。Rectangle 对象包含 xywidthheight 属性。


实现
    public function get screen():Rectangle
stage属性 
stage:Stage  []

代表映射到此 SystemManager 中的应用程序窗口的 flash.display.Stage。


实现
    public function get stage():Stage
toolTipChildren属性 
toolTipChildren:IChildList  []

将使用此 ISystemManager 作为父项的工具提示的列表。

ISystemManager 包含各种类型的子项,例如应用程序、弹出窗口、最顶部窗口、工具提示和自定义光标。

IChildList 对象具有类似于 getChildAt() 的方法和类似于 numChildren 的属性。例如,toolTipChildren.numChildren 可提供工具提示数目(可以是 0,也可以是 1);如果存在工具提示,您可以将其当作 toolTipChildren.getChildAt(0) 进行访问。


实现
    public function get toolTipChildren():IChildList
topLevelSystemManager属性 
topLevelSystemManager:ISystemManager  []

负责应用程序窗口的 ISystemManager。只要此应用程序尚未加载到其它应用程序中,这就是同一个 ISystemManager。


实现
    public function get topLevelSystemManager():ISystemManager
方法详细信息
activate()方法
public function activate(f:IFocusManagerContainer):void

激活 IFocusManagerContainer 中的 FocusManager。

参数

f:IFocusManagerContainer — 应激活其 FocusManager 的顶级窗口。

addFocusManager()方法 
public function addFocusManager(f:IFocusManagerContainer):void

注册一个包含 FocusManager 的顶级窗口。由 FocusManager 调用,通常不由应用程序代码调用。

参数

f:IFocusManagerContainer — 应用程序中的顶级窗口。

deactivate()方法 
public function deactivate(f:IFocusManagerContainer):void

取消激活 IFocusManagerContainer 中的 FocusManager,并激活下一个最高层 IFocusManagerContainer 窗口中的 FocusManager。

参数

f:IFocusManagerContainer — 应取消激活其 FocusManager 的顶级窗口。

getDefinitionByName()方法 
public function getDefinitionByName(name:String):Object

将给定的 String 转换为 Class 或数据包级的 Function。根据是否加载到其它应用程序来调用适当的 ApplicationDomain.getDefinition() 方法。

参数

name:String — 类名称,例如“mx.video.VideoManager”。

返回
Object — 使用 name 或 null 表示的 Class。
isFontFaceEmbedded()方法 
public function isFontFaceEmbedded(tf:TextFormat):Boolean

如果所需的字体已嵌入到此应用程序中,或已使用 Font.registerFont() 方法进行了全局注册,则返回 true

参数

tf:TextFormat — 提供字符格式设置信息的 TextFormat 类。

返回
Boolean — 如果所需的字体已嵌入到此应用程序中,或已使用 Font.registerFont() 方法进行了全局注册,则返回 true
isTopLevel()方法 
public function isTopLevel():Boolean

如果此 ISystemManager 负责应用程序窗口,则返回 true;如果此应用程序已加载到其它应用程序中,则返回 false

返回
Boolean — 如果此 ISystemManager 负责应用程序窗口,则返回 true
removeFocusManager()方法 
public function removeFocusManager(f:IFocusManagerContainer):void

取消注册包含 FocusManager 的顶级窗口。由 FocusManager 调用,通常不由应用程序代码调用。

参数

f:IFocusManagerContainer — 应用程序中的顶级窗口。





 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flex/3_cn/mx/managers/ISystemManager.html