WindowedApplication 定义 Application 容器,用于为 AIR 应用程序创建 Flex 应用程序。
WindowedApplication 有两个作用。它可以替换 <mx:WindowedApplication> 标签,与基于 Flex 的 AIR 应用程序的入口点具有相同的作用。此外,作为容器,WindowedApplication 可定义 Flex AIR 应用程序初始窗口的布局,在 WindowedApplication 中定义的任何可见控件都将成为 AIR 应用程序加载的初始窗口中的内容。
WindowedApplication 是基于 Flex 的 AIR 应用程序的顶层应用程序。该应用程序没有设计为由其它 Flex 应用程序进行加载。如果 WindowedApplication 需要加载其它应用程序,请使用 Application 类作为这些应用程序的容器。如果需要其它窗口,请使用 Window 类作为这些窗口的容器。
请注意,由于 WindowedApplication 只呈示单个窗口中的可见内容,而不是多窗口应用程序中的所有窗口,所以 WindowedApplication 实例只为自己的舞台和窗口调度与显示相关的事件(WindowedApplication 类从显示对象的 InteractiveObject 和 UIComponent 等基类继承的事件),而不为应用程序中其它窗口发生的事件调度这些事件。这与基于浏览器的应用程序不同。在后者中,Application 容器会为应用程序中的所有窗口调度这些事件(因为从技术角度而言,这些窗口都是在单个 Application 舞台上呈示的显示对象)。
隐藏 MXML 语法
The <mx:WindowedApplication> tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:WindowedApplication
Properties
alwaysInFront="false"
autoExit="true"
backgroundFrameRate="-1"
dockIconMenu="null"
menu="null"
showStatusBar="true"
status=""
systemTrayIconMenu="null"
title=""
titleIcon="null"
useNativeDragManager="true"
Styles
backgroundAlpha="1.0"
backgroundColor="0xFFFFFF"
resizeAffordanceWidth="6"
Effects
closeEffect="No default"
minimizeEffect="No default"
unminimizeEffect="No default"
Events
applicationActivate="No default"
applicationDeactivate="No default"
close="No default"
closing="No default"
displayStateChange="No default"
displayStateChanging="No default"
invoke="No default"
moving="No default"
networkChange="No default"
resizing="No default"
windowActivate="No default"
windowComplete="No default"
windowDeactivate="No default"
windowMove="No default"
windowResize="No default"
/>
mxmlContentFactory
查看示例
样式为常见样式,或与特定主题关联。如果为常见样式,则可以用于任何主题。如果样式与特定主题关联,则只有应用程序使用该主题时才能使用该样式。
语言版本: ActionScript 3.0
产品版本: Flex 4
运行时版本: Flash10, AIR 1.5
由 backgroundColor 属性定义的颜色的 Alpha 级别。
默认值为 1.0。
语言版本: ActionScript 3.0
产品版本: Flex 4
运行时版本: Flash10, AIR 1.5
指定该元素的哪条基线对齐到 alignmentBaseline 以确定元素在该行上的垂直位置.
语言版本: ActionScript 3.0
产品版本: Flex 4
运行时版本: Flash10, AIR 1.5
指定当列表相应侧的内边距值为 auto 时,列表开始边缘的自动缩进.
语言版本: ActionScript 3.0
产品版本: Flex 4
运行时版本: Flash10, AIR 1.5
提供窗口边框周围的误差范围,以便更易于调整大小。如果是在距离窗口的外部边缘 resizeAffordance 像素的位置进行单击,则可以将在窗口上的单击视为在窗口边框上的单击。
默认值为 6。
alwaysInFront:Boolean
确定基础 NativeWindow 是否始终位于其它窗口之前。
默认值为 false。
public function get alwaysInFront():Boolean public function set alwaysInFront(value:Boolean):void
applicationID:String [只读]
AIR 用于标识应用程序的标识符。
public function get applicationID():String
autoExit:Boolean
指定当关闭最后一个窗口时,AIR 应用程序是退出,还是继续在背景中运行。
默认值为 true。
public function get autoExit():Boolean public function set autoExit(value:Boolean):void
backgroundFrameRate:Number
指定当应用程序处于非活动状态时要使用的帧速率。设置为 -1 时,不会发生背景帧速率调节。
默认值为 -1。
public function get backgroundFrameRate():Number public function set backgroundFrameRate(value:Number):void
closed:Boolean [只读]
如果已关闭基础窗口,则返回 true。
public function get closed():Boolean
dockIconMenu:FlexNativeMenu
停靠图标菜单。一些操作系统不支持停靠图标菜单。
public function get dockIconMenu():FlexNativeMenu public function set dockIconMenu(value:FlexNativeMenu):void
maximizable:Boolean [只读]
指定窗口是否可最大化。
public function get maximizable():Boolean
menu:FlexNativeMenu
支持应用程序菜单的操作系统的应用程序菜单,或者支持窗口菜单的操作系统的应用程序初始窗口中的窗口菜单。
public function get menu():FlexNativeMenu public function set menu(value:FlexNativeMenu):void
minimizable:Boolean [只读]
指定窗口是否可最小化。
public function get minimizable():Boolean
nativeApplication:NativeApplication [只读]
代表 AIR 应用程序的 NativeApplication 对象。
public function get nativeApplication():NativeApplication
nativeWindow:NativeWindow [只读]
此 WindowedApplication 组件使用的 NativeWindow(应用程序的初始本机窗口)。
public function get nativeWindow():NativeWindow
resizable:Boolean [只读]
指定窗口是否可调整大小。
public function get resizable():Boolean
showStatusBar:Boolean
如果为 true,则状态栏可见。
只有将 WindowedApplicationSkin 类或 SparkChromeWindowedApplicationSkin 类用作应用程序或任何应用程序窗口的外观时,才会显示状态栏。
默认值为 true。
public function get showStatusBar():Boolean public function set showStatusBar(value:Boolean):void
status:String
如果可见,为显示在状态栏中的字符串。
默认值为 ""。
此属性可用作数据绑定的源。修改此属性后,将调度 statusChanged 事件。
public function get status():String public function set status(value:String):void
systemChrome:String [只读]
指定窗口具有的系统镶边类型(如果有)。可能值集由 NativeWindowSystemChrome 类中的常量定义。
public function get systemChrome():String
systemTrayIconMenu:FlexNativeMenu
系统任务栏图标菜单。一些操作系统不支持系统任务栏图标菜单。
public function get systemTrayIconMenu():FlexNativeMenu public function set systemTrayIconMenu(value:FlexNativeMenu):void
title:String
在窗口标题栏和任务栏中显示的标题。如果您正在使用系统镶边,并将此属性设置为与 application.xml 中的 <title> 不同的标签,则首先可能会看到 XML 文件的标题一闪而过。
默认值为 ""。
此属性可用作数据绑定的源。修改此属性后,将调度 titleChanged 事件。
public function get title():String public function set title(value:String):void
titleIcon:Class
用于绘制标题栏图标的 Class(通常是图像)。
默认值为 null。
此属性可用作数据绑定的源。修改此属性后,将调度 titleIconChanged 事件。
public function get titleIcon():Class public function set titleIcon(value:Class):void
transparent:Boolean [只读]
指定窗口是否透明。
public function get transparent():Boolean
type:String [只读]
指定此组件代表的 NativeWindow 类型。可能值集由 NativeWindowType 类中的常量定义。
public function get type():String
public var useNativeDragManager:Boolean = true
如果为 true,则 DragManager 应使用 NativeDragManagerImpl 实现类。如果为 false,则将使用 DragManagerImpl 类。
注意:无法使用 ActionScript 代码设置此属性;必须使用 MXML 代码进行设置。这意味着无法在运行时更改此属性的值。
默认情况下,Flex 中内置的 AIR 应用程序的 DragManager 使用 NativeDragManagerImpl 类作为实现类。Flex 中内置的 Flash Player 应用程序使用 DragManagerImpl 类。
NativeDragManagerImpl 类是 AIR NativeDragManager API 和 Flex DragManager API 之间的桥梁。AIR NativeDragManager 类使用操作系统的拖放 API。该类支持在 AIR 窗口之间以及在操作系统和 AIR 之间进行拖动。由于操作系统控制拖放操作,因此在拖动过程中无法自定义光标,您也无法控制释放动画。该行为取决于操作系统,在不同平台间会存在某些不一致。
DragManagerImpl 类不使用操作系统进行拖放操作,而是由自身控制整个拖放过程。该类支持自定义光标,并提供释放动画。但是,它不允许在 AIR 窗口之间以及在操作系统和 AIR 窗口之间进行拖动。
默认值为 true。
public function activate():void
激活基础 NativeWindow(即使此应用程序当前未处于活动状态)。
public function close():void
关闭应用程序的 NativeWindow(应用程序打开的初始本机窗口)。可取消此操作。
public function maximize():void
最大化窗口;如果窗口已经最大化,则不执行任何操作。
public function orderInBackOf(window:IWindow):Boolean
将窗口排序到另一个窗口的正后方。要将该窗口排序到不实现 IWindow 的 NativeWindow 之后,请使用此窗口的 NativeWindow 的 orderInBackOf() 方法。
:IWindow — 此窗口将排序到其后方的 IWindow(Window 或 WindowedAplication)。
Boolean — 如果窗口成功排序到另一个窗口的后方,则为 true;如果窗口不可见或处于最小化状态,则为 false。
public function orderInFrontOf(window:IWindow):Boolean
将窗口排序到另一个窗口的正前方。要将该窗口排序到不实现 IWindow 的 NativeWindow 之前,请使用此窗口的 NativeWindow 的 orderInFrontOf() 方法。
:IWindow — 此窗口将排序到其前方的 IWindow(Window 或 WindowedAplication)。
Boolean — 如果窗口成功排序到另一个窗口的前方,则为 true;如果该窗口不可见或处于最小化状态,则为 false。
public function orderToBack():Boolean
将窗口排序到同一应用程序中的其它所有窗口的后方。
Boolean — 如果窗口成功排序到其它所有窗口的后方,则为 true;如果该窗口不可见或处于最小化状态,则为 false。
public function orderToFront():Boolean
将窗口排序到同一应用程序中的其它所有窗口的前方。
Boolean — 如果窗口成功排序到其它所有窗口的前方,则为 true;如果该窗口不可见或处于最小化状态,则为 false。
public function restore():void
还原窗口(如果窗口处于最大化状态,则取消最大化;如果处于最小化状态,则取消最小化)。
mx.events.AIREventmx.events.AIREvent.APPLICATION_ACTIVATE
在激活此应用程序时调度。
AIREvent.APPLICATION_ACTIVATE 常量可为 applicationActivate 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
bubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。typemx.events.AIREventmx.events.AIREvent.APPLICATION_DEACTIVATE
在取消激活此应用程序时调度。
AIREvent.APPLICATION_DEACTIVATE 常量可为 applicationDeactivate 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
bubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。typeflash.events.Eventflash.events.Event.CLOSE
在关闭此应用程序窗口后调度。
Event.CLOSE 常量定义 close 事件对象的 type 属性的值。
此事件具有以下属性:
bubblesfalsecancelablefalse;没有要取消的默认行为。currentTargettargetflash.events.Eventflash.events.Event.CLOSING
在 WindowedApplication 窗口关闭前调度。可取消。
Event.CLOSING 常量定义 closing 事件对象的 type 属性值。
此事件具有以下属性:
bubblesfalsecancelabletrue;取消此事件对象将停止关闭操作。currentTargettargetflash.events.NativeWindowDisplayStateEventflash.events.NativeWindowDisplayStateEvent.DISPLAY_STATE_CHANGE
在显示状态更改为最小化、最大化或还原状态之后调度。
定义 displayStateChange 事件对象的 type 属性的值。
此事件具有以下属性:
afterDisplayStatebeforeDisplayStatetargetbubblescurrentTargetcancelablefalse;没有要取消的默认行为。flash.events.NativeWindowDisplayStateEventflash.events.NativeWindowDisplayStateEvent.DISPLAY_STATE_CHANGING
在显示状态更改为最小化、最大化或还原状态之前调度。
定义 displayStateChanging 事件对象的 type 属性的值。
此事件具有以下属性:
afterDisplayStatebeforeDisplayStatetargetbubblescurrentTargetcancelabletrue;取消该事件会阻止更改。flash.events.NativeWindowBoundsEventflash.events.NativeWindowBoundsEvent.MOVING
在 WindowedApplication 对象移动前调度,或在拖动 WindowedApplication 对象时调度。
定义 moving 事件对象的 type 属性值。
此事件具有以下属性:
afterBoundsbeforeBoundsbubblescancelabletrue;取消该事件会阻止窗口移动。currentTargettarget注意:在 Linux 上,此事件不支持 preventDefault() 方法。
flash.events.Eventflash.events.Event.NETWORK_CHANGE
当计算机连接到网络或与网络断开连接时调度。
Event.NETWORK_CHANGE 常量定义 networkChange 事件对象的 type 属性值。
此事件具有以下属性:
bubblesfalsecancelablefalse;没有要取消的默认行为。currentTargettargetflash.events.NativeWindowBoundsEventflash.events.NativeWindowBoundsEvent.RESIZING
在调整 WindowedApplication 对象大小之前调度,或在拖动 WindowedApplication 对象边界时调度。
定义 resizing 事件对象的 type 属性值。
此事件具有以下属性:
afterBoundsbeforeBoundstargetbubblescurrentTargetcancelabletrue;取消该事件会阻止窗口移动。注意:在 Linux 上,此事件不支持 preventDefault() 方法。
mx.events.AIREventmx.events.AIREvent.WINDOW_ACTIVATE
在激活此应用程序窗口后调度。
AIREvent.WINDOW_ACTIVATE 常量可为 windowActivate 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
bubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。typemx.events.AIREventmx.events.AIREvent.WINDOW_COMPLETE
在 WindowedApplication 完成其初始布局后调度。默认情况下,此时 WindowedApplication 将处于可见状态。
AIREvent.WINDOW_COMPLETE 常量可为 windowComplete 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
bubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。typemx.events.AIREventmx.events.AIREvent.WINDOW_DEACTIVATE
在取消激活此应用程序窗口后调度。
AIREvent.WINDOW_DEACTIVATE 常量可为 windowDeactivate 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
bubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。typemx.events.FlexNativeWindowBoundsEventmx.events.FlexNativeWindowBoundsEvent.WINDOW_MOVE
在 WindowedApplication 对象移动后调度。
FlexNativeWindowBoundsEvent.WINDOW_MOVE 常量可为 windowMove 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
afterBoundsbeforeBoundsbubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。typemx.events.FlexNativeWindowBoundsEventmx.events.FlexNativeWindowBoundsEvent.WINDOW_RESIZE
在调整基础 NativeWindow 对象的大小后调度。
FlexNativeWindowBoundsEvent.WINDOW_RESIZE 常量可为 windowResize 事件定义事件对象的 type 属性的值。
事件对象的属性有下列值:
afterBoundsbeforeBoundsbubblescancelablecurrentTargetmyButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 filetargetcurrentTarget 属性始终可以访问侦听事件的 Object。type<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:s="library://ns.adobe.com/flex/spark"
creationComplete="doCreationComplete();">
<fx:Script>
<![CDATA[
import mx.controls.FlexNativeMenu;
import mx.events.FlexNativeMenuEvent;
[Embed(source="TestImage.jpg")]
[Bindable]
public var TestImage:Class;
private var menu1:FlexNativeMenu;
private var menu2:FlexNativeMenu;
/**
* Set up the icon and menus.
**/
private function doCreationComplete():void
/**
* Set up the icon which appears in the sytem tray (Win)
* or the dock (Mac).
**/
private function setUpIcon():void {
nativeApplication.icon.bitmaps = new Array(new TestImage().bitmapData);
}
/**
* If someone chooses Exit from either menu, then exit.
**/
private function handleMenuItemClick(e:mx.events.FlexNativeMenuEvent):void
}
]]>
</fx:Script>
<fx:Declarations>
<!-- We use this one for the system tray or dock. -->
<fx:XML format="e4x" id="menuData1">
<root>
<menuitem label="Exit" />
</root>
</fx:XML>
<!-- We use this one for the menu on top. -->
<fx:XML format="e4x" id="menuData2">
<root>
<menuitem label="File" >
<menuitem label="Exit" />
</menuitem>
</root>
</fx:XML>
</fx:Declarations>
</s:WindowedApplication>
显示 MXML 语法










