mx.coreIButton IButton 接口是一个标记接口,指示组件用作按钮。mx.core:IUIComponent IButton 接口是一个标记接口,指示组件用作按钮。 callLater method对稍后执行的方法的引用。 argsnull对象 Array,给出要传递给此方法的参数。 emphasized ISWFLoader ISWFLoader 接口定义一个 API,它含有加载兼容应用程序和不受信任的应用程序时所需的特殊属性和方法。mx.core:ISWFBridgeProvider ISWFLoader 接口定义一个 API,它含有加载兼容应用程序和不受信任的应用程序时所需的特殊属性和方法。 getVisibleApplicationRect 获取所加载的应用程序在屏幕上对用户可见的范围。包括此对象可见部分的 Rectangle。该矩形使用全局坐标。 allApplicationsfalse确定计算该可见矩形时仅依据此应用程序中的显示对象还是同时依据所有父应用程序中的显示对象。包含更多父应用程序可能会减少所返回的可见区域。如果为 true,则所有应用程序都用于查找可见区域,否则,仅使用此应用程序中的显示对象。 获取所加载的应用程序在屏幕上对用户可见的范围。 loadForCompatibility 一个标志,指示是否加载内容,以使其可以与用 Flex 的其他版本构建的应用程序进行互操作。false 一个标志,指示是否加载内容,以使其可以与用 Flex 的其他版本构建的应用程序进行互操作。通过将应用程序加载到同级(即对等)ApplicationDomain 中,从而实现与其他 Flex 应用程序的兼容。如果将子应用程序加载到与主应用程序不同的 SecurityDomain 中,则忽略此标志。如果为 true,则内容加载到同级 ApplicationDomain 中。如果为 false,则内容加载到子级 ApplicationDomain 中。 UITextFormat UITextFormat 类给出 UITextField 类的字符格式设置信息。flash.text:TextFormat UITextFormat 类给出 UITextField 类的字符格式设置信息。UITextField 类定义由许多 Flex 组合组件用来显示文本的组件。

UITextFormat 类扩展 flash.text.TextFormat 类以添加文本测量方法 measureText()measureHTMLText(),并添加控制字体的高级消除锯齿功能的属性。

mx.core.UITextFieldUITextFormat 构造函数。systemManagermx.managers:ISystemManagerSystemManager 对象。SystemManager 跟踪嵌入的字体。通常,这是从 UIComponent 的 systemManager 属性中获得的 SystemManager。 fontnull指定字体名称的 String;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullsizenull指定字体大小(以像素为单位)的 Number;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullcolornull指定文本 RGB 颜色的无符号整数(如 0xFF0000 为红色);或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullboldnull指定文本是否使用粗体的布尔值标志;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullitalicnull指定文本是否使用斜体的布尔值标志;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullunderlinenull指定文本是否使用下划线的布尔值标志;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullurlnull指定文本超链接到的 URL 的 String;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nulltargetnull指定显示超链接 URL 的目标窗口的 String。如果目标窗口为 null 或空字符串,则超链接页面显示在同一浏览器窗口中。如果 urlString 参数为 null 或空字符串,则此属性不发挥作用。此参数是可选的,默认值为 nullalignnull指定段落对齐方式的 String(使用 flash.text.TextFormatAlign 值表示);或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullleftMarginnull指定段落左边距(以像素为单位)的 Number;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullrightMarginnull指定段落右边距(以像素为单位)的 Number;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullindentnull指定从左边距到段落中第一个字符的缩进(以像素为单位)的 Number;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 nullleadingnull指定行与行之间的其他垂直间距量的 Number;或 null 以指示此 UITextFormat 不指定此属性。此参数是可选的,默认值为 null 构造函数。 flash.text.TextFormatAlignmeasureHTMLText 返回指定 HTML 文本的测量信息,该文本可能包含 HTML 标签(如 &lt;font&gt; 和 &lt;b&gt;),假设该文本显示在单行 UITextField 中并使用此 UITextFormat 对象定义文本格式。包含文本度量值的 TextLineMetrics 对象。 htmlText指定要测量的 HTML 文本的 String。 roundUptrue指定是否将测量宽度和高度向上舍入为最接近的整数的布尔值标志。向上舍入适用于大多数情况。 返回指定 HTML 文本的测量信息,该文本可能包含 HTML 标签(如 <font><b>),假设该文本显示在单行 UITextField 中并使用此 UITextFormat 对象定义文本格式。 flash.text.TextLineMetricsmeasureText 返回指定文本的测量信息,假设文本显示在单行 UITextField 组件中并使用此 UITextFormat 对象定义文本格式。包含文本度量值的 TextLineMetrics 对象。 text指定要测量的文本的 String。 roundUptrue指定是否将测量宽度和高度向上舍入为最接近的整数的布尔值标志。向上舍入适用于大多数情况。 返回指定文本的测量信息,假设文本显示在单行 UITextField 组件中并使用此 UITextFormat 对象定义文本格式。 flash.text.TextLineMetricsantiAliasType 定义 UITextField 类的消除锯齿设置。"advanced" 定义 UITextField 类的消除锯齿设置。可能值为 "normal" (flash.text.AntiAliasType.NORMAL) 和 "advanced" (flash.text.AntiAliasType.ADVANCED)。

默认值为 "advanced",该值将对嵌入字体启用高级消除锯齿功能。将此属性设置为 "normal" 可禁用高级消除锯齿功能。

此属性对系统字体不起作用。

此属性应用于 UITextField 对象中的所有文本;但不能将其应用于部分字符以及其他对象中的文本。

flash.text.AntiAliasType
direction 文本的方向性。null 文本的方向性。

允许的值为“ltr”(适用于从左到右文本,就像在拉丁样式脚本中一样)和“rtl”(适用于从右到左文本,就像在阿拉伯语和希伯来语中一样)。

FTE 和 TLF 在其双向文本布局算法中使用此值,该算法会将 Unicode 字符顺序映射到字型顺序。

注意:此样式只应用于当该 UITextFormat 与 UIFTETextField(而非 UITextField)一起使用时。

gridFitType 定义 UITextField 类的网格固定设置。"pixel" 定义 UITextField 类的网格固定设置。可能值为 "none" (flash.text.GridFitType.NONE)、"pixel" (flash.text.GridFitType.PIXEL) 和"subpixel" (flash.text.GridFitType.SUBPIXEL)。

仅当使用嵌入字体并将 fontAntiAliasType 属性设置为 "advanced" 时,才应用此属性。

此属性对系统字体不起作用。

此属性应用于 UITextField 对象中的所有文本;但不能将其应用于部分字符以及其他对象中的文本。

flash.text.GridFitType
locale 文本的区域设置。null 文本的区域设置。

FTE 和 TLF 使用此区域设置将 Unicode 字符映射到字体字型并查找后备字体。

注意:此样式只应用于当该 UITextFormat 与 UIFTETextField(而非 UITextField)一起使用时。

sharpness 定义 UITextField 类的清晰度设置。0 定义 UITextField 类的清晰度设置。此属性指定字型边缘的清晰度。可能值为从 -400 到 400 之间的数字。

仅当使用嵌入字体并将 fontAntiAliasType 属性设置为 "advanced" 时,才应用此属性。

此属性对系统字体不起作用。

此属性应用于 UITextField 对象中的所有文本;但不能将其应用于部分字符以及其他对象中的文本。

flash.text.TextField
thickness 定义 UITextField 类的粗细设置。0 定义 UITextField 类的粗细设置。此属性指定字型边缘的粗细。可能值为从 -200 到 200 之间的数字。

仅当使用嵌入字体并将 fontAntiAliasType 属性设置为 "advanced" 时,才应用此属性。

此属性对系统字体不起作用。

此属性应用于 UITextField 对象中的所有文本;但不能将其应用于部分字符以及其他对象中的文本。

flash.text.TextField
useFTE 确定 measureText() 和 measureHTMLText() 方法如何进行文本测量。falsefalse 确定 measureText()measureHTMLText() 方法如何进行文本测量。

如果为 true,则这些方法使用 Text Layout Framework 中的 FTETextField 类的屏幕外实例。如果为 false,则这些方法使用 Flash Player 中的 TextField 类的屏幕外实例。

moduleFactory 用于创建嵌入字体的 TextField 的 moduleFactory。mx.core:IFlexModuleFactory 用于创建嵌入字体的 TextField 的 moduleFactory。
IDeferredInstance IDeferredInstance 接口定义 Flex 延迟实例工厂接口。 IDeferredInstance 接口定义 Flex 延迟实例工厂接口。实现 IDeferredInstance 会在首次调用 getInstance() 方法时创建一个特定实例值,并在随后调用 getInstance() 方法时返回对该值的引用。

当 Flex 编译器遇到为 IDeferredInstance 类型的属性分配值的 MXML 时,将执行以下自动强制操作:

  1. 如果为 IDeferredInstance 类型的属性分配的值是代表类的 MXML 子标签(如组件标签),则编译器将创建 IDeferredInstance 实现,该实现的 getInstance() 方法返回类的一个实例,该实例按 MXML 代码中指定的内容进行配置。下例显示了这种格式;在本示例中,MyComp 是自定义组件,包含 IDeferredInstance 类型的名为 myDeferredInstanceProperty 的变量。编译器生成 IDeferredInstance1 实现,其 getInstance() 方法返回 Label 类的实例,其文本属性设置为“This is a deferred label”:
              <MyComp>
                  <myDeferredInstanceProperty>
                      <Label text="This is a deferred label"/>
                  </myDeferredInstanceProperty>
              </MyComp>
  2. 如果为 IDeferredInstance 类型的属性非配的是文本字符串,则编译器会将字符串解释为完全限定的类名称,并创建 IDeferredInstance 实现,其 getInstance() 方法返回指定类的新实例。指定的类必须拥有不含参数的构造函数。下例显示了这种格式;在本示例中,编译器生成 IDeferredInstance1 实现,其 getInstance() 方法返回 MyClass 类的实例:
              <MyComp myDeferredInstanceProperty="myPackage.MyClass/>

当 ActionScript 类延迟属性值的实例化时,使用 IDeferredInstance 接口。如果 ActionScript 类需要使用同一值的多个实例,则无法使用 IDeferredInstance。对于那些情况,请改用 IFactory 接口。

states.AddChild 类包含 IDeferredInstance 类型的 childFactory 属性。

mx.states.AddChildgetInstance 如果不存在实例,则基于类或函数创建实例 Object。实例 Object。 如果不存在实例,则基于类或函数创建实例 Object。
SpriteAsset SpriteAsset 是 flash.display.Sprite 类的子类,表示嵌入在应用程序中的矢量图形图像。mx.core:IFlexAssetmx.core:IFlexDisplayObjectmx.core:IBordermx.core:ILayoutDirectionElementmx.core:FlexSprite SpriteAsset 是 flash.display.Sprite 类的子类,表示嵌入在应用程序中的矢量图形图像。该子类实现了 IFlexDisplayObject 接口,此接口使嵌入的矢量图形图像可以显示在 Image 控件中,或用作容器背景或组件外观。

您可以嵌入位于 SVG 文件中的矢量图形图像。还可以嵌入由 Flash 生成的 SWF 文件中的 sprite 元件。在这两种情况下,MXML 编译器自动生成了一个类,该类扩展 SpriteAsset 以呈示嵌入的矢量图形图像。

编写 Flex 应用程序时,通常无需直接使用 SpriteAsset 类。例如,您可以通过编写以下内容嵌入 SWF 文件中的 sprite 元件并将其显示在 Image 控件中:

  <mx:Image id="logo" source="@Embed(source='Assets.swf', symbol='Logo')"/>

或者,通过编写以下内容使用 CSS 语法将其用作应用程序的背景图像:

  <fx:Style>
      @namespace mx "library://ns.adobe.com/flex/mx"
      mx|Application {
          backgroundImage: Embed(source="Assets.swf", symbol='Logo')
      }
  <fx:Style/>

而不必了解 MXML 编译器已为您创建了 BitmapAsset 的一个子类。

不过,了解在 ActionScript 级别发生的操作可能会有用。要在 ActionScript 中嵌入矢量图形图像,需要声明类型为 Class 的变量,并对其应用 [Embed] 元数据。例如,可以通过以下方式嵌入 SWF 文件中的 sprite 元件:

  [Bindable]
  [Embed(source="Assets.swf", symbol="Logo")]
  private var logoClass:Class;

MXML 编译器会发现 Assets.swf 中的 Logo 元件是一个 sprite,自动生成 SpriteAsset 类的子类来表示该 sprite,并将变量设置为引用此自动生成的类。然后,您可以使用此类引用通过 new 运算符创建 SpriteAsset 的实例,还可以对其使用 Sprite 类的 API:

  var logo:SpriteAsset = SpriteAsset(new logoClass());
  logo.rotation=45;

但是,您很少需要自己创建 SpriteAsset 实例,因为 image-related 属性和样式可以直接设置为 image-producing 类,且组件会根据需要创建图像实例。例如,要在 Image 控件中显示此矢量图形图像,可以将 Image 的 source 属性设置为 logoClass。在 MXML 中,您可以按照以下方法执行此操作:

  <mx:Image id="logo" source="{logoClass}"/>
SpriteAsset 构造函数。 构造函数。 invalidateLayoutDirection 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。如果它们不同,该方法负责镜像元素的内容以及更新元素的布局后转换,以便子代继承镜像的坐标系。IVisualElement 通常通过以下方法实现镜像:使用 postLayoutTransformOffsets 按 -1 缩放 X 轴以及按元素宽度平移原点的 x 坐标。此“镜像”转换的净效果是反转 X 轴增加的方向,而不更改元素相对于其父代的原点的位置。 move 将此对象移动到指定的 x 和 y 坐标。x此对象的新 x 位置。 y此对象的新 y 位置。 将此对象移动到指定的 x 和 y 坐标。 setActualSize 设置此对象的实际大小。newWidth此对象的新宽度。 newHeight此对象的新高度。 设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其他情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

borderMetrics 为具有四个属性(left、top、right 和 bottom)的边框返回 EdgeMetrics 对象。mx.core:EdgeMetrics 为具有四个属性(lefttoprightbottom)的边框返回 EdgeMetrics 对象。每个属性值等于边框其中一条边的粗细(以像素为单位)。 layoutDirection 指定元素的所需布局方向:LayoutDirection.LTR(从左到右)、LayoutDirection.RTL(从右到左)或 null(继承)。 指定元素的所需布局方向:LayoutDirection.LTR(从左到右)、LayoutDirection.RTL(从右到左)或 null(继承)。此属性通常按继承样式回退。如果指定 null,则 layoutDirection 样式将设置为 undefined。类似 GraphicElement 的类(实现 ILayoutDirectionElement,但不支持样式)必须另外针对此属性支持 null 值,这意味着 layoutDirection 必须从其父代继承。 measuredHeight 此对象的测量高度。 此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

measuredWidth 此对象的测量宽度。 此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

EdgeMetrics EdgeMetrics 类可指定可视组件周围四个边缘区域的粗细(以像素为单位)。Object EdgeMetrics 类可指定可视组件周围四个边缘区域的粗细(以像素为单位)。

下列 Flex 属性的值是 EdgeMetrics 对象:

  • mx.core.Container 和 mx.skins.Border 类的 borderMetrics 属性在计算 EdgeMetrics 对象的属性值时仅考虑边框。
  • mx.core.Container 类以及 Container 类的子类的 viewMetrics 属性在计算 EdgeMetrics 对象的属性值时需要考虑可能出现的滚动条和非内容元素,例如 Panel 容器的标题区域以及 ControlBar 组件区域。
  • mx.core.Container 类的 viewMetricsAndPadding 属性包括已为 viewMetrics 属性列出的项目,以及计算 EdgeMetrics 对象的属性值时由容器边距定义的所有区域。

这三个属性均返回对同一 EdgeMetrics 对象的引用,Container 正使用该对象进行测量和布局;这些属性不返回此对象的副本。如果需要副本,请调用 clone() 方法。

mx.core.Containermx.skins.Bordermx.containers.PanelEdgeMetrics 构造函数。left0左边缘区域的宽度(以像素为单位)。 top0上边缘区域的高度(以像素为单位)。 right0右边缘区域的宽度(以像素为单位)。 bottom0下边缘区域的高度(以像素为单位)。 构造函数。 clone 返回此 EdgeMetrics 对象的副本。此 EdgeMetrics 对象的副本。 mx.core:EdgeMetrics 返回此 EdgeMetrics 对象的副本。 EMPTY left、top、right 和 bottom 属性值均为零的 EdgeMetrics 对象。unknownmx.core:EdgeMetrics lefttoprightbottom 属性值均为零的 EdgeMetrics 对象。 bottom 下边缘区域的高度(以像素为单位)。 下边缘区域的高度(以像素为单位)。 left 左边缘区域的宽度(以像素为单位)。 左边缘区域的宽度(以像素为单位)。 right 右边缘区域的宽度(以像素为单位)。 右边缘区域的宽度(以像素为单位)。 top 上边缘区域的高度(以像素为单位)。 上边缘区域的高度(以像素为单位)。
IRepeater IRepeater 接口定义 Repeater 对象的公共 API。 IRepeater 接口定义 Repeater 对象的公共 API。 executeChildBindings 对此 Repeater 创建的所有 UIComponent 执行绑定。 对此 Repeater 创建的所有 UIComponent 执行绑定。

此方法由 Flex 框架调用。开发人员不应调用它。

initializeRepeater 初始化新的 Repeater 对象。containermx.core:IContainer包含此 Repeater 的容器,此 Repeater 将在该容器中创建其子项。 recurse布尔值标志,指示此 Repeater 是否应创建其子项的所有后代的。 初始化新的 Repeater 对象。

此方法由 Flex 框架调用。开发人员不应调用它。

container 包含此 Repeater 的容器,此 Repeater 将在该容器中创建其子项。mx.core:IContainer 包含此 Repeater 的容器,此 Repeater 将在该容器中创建其子项。 count 此 Repeater 应执行的次数。 此 Repeater 应执行的次数。

如果 Repeater 执行时到达数据提供程序的末尾,则它实际执行的次数将少于所要求的次数。

currentIndex Repeater 执行时,当前正在处理的 dataProvider 中项目的索引。 Repeater 执行时,当前正在处理的 dataProvider 中项目的索引。

Repeater 完成执行后,此属性为 -1。不过,重复组件实例的 repeaterIndex 属性会记住作为其创建基础的 dataProvider 项目的索引。如果是嵌套的 Repeater,您可以使用 repeaterIndices 数组。

mx.core.UIComponent.repeaterIndexmx.core.UIComponent.repeaterIndicesmx.core.UIComponent.instanceIndexmx.core.UIComponent.instanceIndices
currentItem 此 Repeater 执行时,当前正在处理的 dataProvider 中的项目。 此 Repeater 执行时,当前正在处理的 dataProvider 中的项目。

Repeater 完成执行后,此属性为 null。不过,在这种情况下,您可以调用重复组件实例的 getRepeaterItem() 方法以获取作为该组件实例创建基础的 dataProvider 项目。

mx.core.UIComponent.getRepeaterItem()
dataProvider 此 Repeater 创建其子项的重复实例时使用的数据提供程序。 此 Repeater 创建其子项的重复实例时使用的数据提供程序。

如果读取 dataProvider 属性,将始终获得 ICollectionView 对象或 null。如果您将 dataProvider 属性设置为 null 之外的任何值,则将根据以下规则转换为 ICollectionView 对象:

  • 如果设置为 Array,则转换为 ArrayCollection。
  • 如果设置为 ICollectionView,则不执行任何转换。
  • 如果设置为 IList,则转换为 ListCollectionView。
  • 如果设置为 XML 或 XMLList,则转换为 XMLListCollection。
  • 在其他情况下,转换为单一元素 ArrayCollection。

必须为 dataProvider 属性指定值,否则 Repeater 组件不会执行。

recycleChildren 布尔值标志,指示此 Repeater 是重用以前创建的子项还是创建新子项。 布尔值标志,指示此 Repeater 是重用以前创建的子项还是创建新子项。

如果为 true,则当此 Repeater 的 dataProviderstartingIndexcount 更改时,它会通过将新数据绑定到现有子项循环使用现有子项。如果需要增加子项,则不断创建和添加子项。如果需要减少子项,则删除多余子项并将其作为垃圾回收。

如果为 false,则当此 Repeater 的 dataProviderstartingIndexcount 更改时,它将删除以前创建的所有子项,并基于新的数据项创建和添加新子项。

默认情况下,此属性为 false。将其设置为 true 可提高性能,但并不适用于所有情况。例如,如果以前创建的子项包含状态信息,如用户键入的文本,则循环使用子项时不会重置此状态。

startingIndex dataProvider 中的索引,此 Repeater 从此索引位置开始创建子项。 dataProvider 中的索引,此 Repeater 从此索引位置开始创建子项。
LayoutDirection LayoutDirection 类定义 IStyleClient 的 layoutDirection 样式和 ILayoutDirectionElement 的 layoutDirection 属性的常量值。Object LayoutDirection 类定义 IStyleClient 的 layoutDirection 样式和 ILayoutDirectionElement 的 layoutDirection 属性的常量值。对于拉丁样式脚本,通常采用从左到右的 layoutDirection。对于阿拉伯语或希伯来语等脚本,则采用从右到左的 layoutDirection。如果为 IStyleClient,将 layoutDirection 样式设置为 undefined 以从其祖代继承 layoutDirection。如果为 ILayoutDirectionElement,将 layoutDirection 属性设置为 null 以从其祖代继承 layoutDirection。 mx.styles.IStyleClientmx.core.ILayoutDirectionElementLTR 对于样式客户端或可视元素,指定从左到右的布局方向。ltr 对于样式客户端或可视元素,指定从左到右的布局方向。 RTL 对于样式客户端或可视元素,指定从右到左的布局方向。rtl 对于样式客户端或可视元素,指定从右到左的布局方向。 IRectangularBorder IRectangularBorder 接口定义用于矩形边框外观的所有类应该实现的接口。mx.core:IBorder IRectangularBorder 接口定义用于矩形边框外观的所有类应该实现的接口。 layoutBackgroundImage backgroundImageBounds hasBackgroundImage MXMLObjectAdapter MXMLObjectAdapter 类是 IMXMLObject 接口的一个存根实现,这样您可以实现该接口,而不必定义所有这些方法。mx.core:IMXMLObjectObject MXMLObjectAdapter 类是 IMXMLObject 接口的一个存根实现,这样您可以实现该接口,而不必定义所有这些方法。所有实现都是非操作指令的等效实现。如果假定该方法会返回某个值,则该值为 null、0 或 false。 MXMLObjectAdapter 构造函数。 构造函数。 initialized 创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。document创建此对象的 MXML 文档。 iddocument 用来引用此对象的标识符。如果此对象是 document 上的深层属性,则 id 为 null。 创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。 IFlexModule IFlexModule 接口用作与 IFlexModuleFactory 的可选约定。 IFlexModule 接口用作与 IFlexModuleFactory 的可选约定。通过 IFlexModuleFactory 创建 IFlexModule 实例后,工厂将在创建后存储对自身的引用。 DesignLayer DesignLayer 类表示一个可视性组,可以在运行时与一个或多个 IVisualElement 实例关联。mx.core:IMXMLObjectflash.events:EventDispatcher DesignLayer 类表示一个可视性组,可以在运行时与一个或多个 IVisualElement 实例关联。DesignLayer 实例支持 visible 和 alpha 属性,设置该属性时将会传播给关联层的子项。 layerPropertyChange 当 effectiveVisibility 或 effectiveAlpha 改变时,由该层分派。mx.events.PropertyChangeEventeffectiveVisibilityeffectiveAlpha 改变时,由该层分派。 DesignLayer 构造函数。 构造函数。 addLayer 为该层添加一个 DesignLayer 子项。valuemx.core:DesignLayer要添加的子层。 为该层添加一个 DesignLayer 子项。 getLayerAt 返回位于指定索引的 DesignLayer 子对象。指定的 DesignLayer 子项(如果索引在 0 和 numLayers - 1 之间)。如果索引无效,则返回 nullmx.core:DesignLayerindexDesignLayer 子项的、从 0 开始的索引。 返回位于指定索引的 DesignLayer 子对象。

请注意,DesignLayer 子项的顺序并不重要。getLayerAt 方法打算与 numLayers 一起使用来对子项列表进行迭代。

numLayers
initialized 创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。document创建此对象的 MXML 文档。 iddocument 用来引用此对象的标识符。如果此对象是 document 上的深层属性,则 id 为 null。 创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。 removeLayer 从该层删除 DesignLayer 子项。valuemx.core:DesignLayer要删除的子层。 从该层删除 DesignLayer 子项。 alpha 此设计层实例的 Alpha 值,介于 0.0 到 1.0 之间。1.0 此设计层实例的 Alpha 值,介于 0.0 到 1.0 之间。

当更新时,用于 effectiveAlpha 的合适的更改事件将会被分派给该层中所有的 layerPropertyChange 侦听器,以及所有受影响的后代层(如果有的话)的侦听器。

effectiveAlpha 返回此设计层的有效 Alpha 值(介于 0.0 到 1.0 之间)的属性。1.0 返回此设计层的有效 Alpha 值(介于 0.0 到 1.0 之间)的属性。此属性值为此层的 Alpha 乘以任何始祖层的 Alpha。 effectiveVisibility 返回此设计层的有效可见性。true 返回此设计层的有效可见性。此属性值将考虑该层和任何始祖层的可见性。 id 层组件的 ID。 层组件的 ID。该值会成为层的实例名称,不应包含任何空格或特殊字符。 numLayers 直接以该层为父层的 DesignLayer 子项的个数。0 直接以该层为父层的 DesignLayer 子项的个数。 parent 该层的父层。mx.core:DesignLayernull 该层的父层。 visible 该设计层实例的可见性。true 该设计层实例的可见性。

当更新时,用于 effectiveVisibility 的合适的更改事件将会被分派给该层中所有的 layerPropertyChange 侦听器,以及所有受影响的后代层(如果有的话)的侦听器。

IFlexAsset IFlexAsset 是一个标记接口,意义如下:如果某个类声明它实现了 IFlexAsset,则该类就显示一个已嵌入到 Flex 应用程序中的资源,例如位图、字体或声音。 IFlexAsset 是一个标记接口,意义如下:如果某个类声明它实现了 IFlexAsset,则该类就显示一个已嵌入到 Flex 应用程序中的资源,例如位图、字体或声音。此接口不定义该类必须实际实现的任何属性或方法。

播放器使用 ActionScript 类来显示嵌入资源和可执行的 ActionScript 代码。当您在 Flex 应用程序中嵌入资源时,MXML 编译器会自动生成一个类来显该资源,所有这些类都会声明它们实现 IFlexAsset,因而能够与代码类区分开来。

IBorder IBorder 接口定义用于边框外观的所有类应实现的接口。 IBorder 接口定义用于边框外观的所有类应实现的接口。

如果边框外观未实现 IBorder,并不是错误。但是,在这种情况下,使用该外观的容器无法确定边框的边框度量信息。因此,容器从左上边缘开始放置内容(如果存在填充,则针对填充进行调整)。对于 HaloBorder 类,borderThickness 样式通常确定 borderMetrics 样式的值。对于图形外观类,Flex 检查 scale9Grid 属性以确定 borderMetrics 样式的值。

borderMetrics 为具有四个属性(left、top、right 和 bottom)的边框返回 EdgeMetrics 对象。mx.core:EdgeMetrics 为具有四个属性(lefttoprightbottom)的边框返回 EdgeMetrics 对象。每个属性值等于边框其中一条边的粗细(以像素为单位)。
IAssetLayoutFeatures IAssetLayoutFeatures 接口定义对象在嵌入资源中支持高级转换时需要的最低限度属性和方法。 IAssetLayoutFeatures 接口定义对象在嵌入资源中支持高级转换时需要的最低限度属性和方法。 mx.core.AdvancedLayoutFeaturescomputedMatrix3D 计算的 3D 矩阵,通过结合 3D 布局矩阵与提供的任何偏移量而计算得出。 计算的 3D 矩阵,通过结合 3D 布局矩阵与提供的任何偏移量而计算得出。 computedMatrix 计算的矩阵,通过结合布局矩阵与提供的任何偏移量而计算得出。 计算的矩阵,通过结合布局矩阵与提供的任何偏移量而计算得出。 is3D 如果计算的转换具有 3D 值,则为 true。 如果计算的转换具有 3D 值,则为 true。 layoutIs3D 如果布局转换具有 3D 值,则为 true。 如果布局转换具有 3D 值,则为 true。 layoutWidth 由镜像转换使用。 由镜像转换使用。请参阅镜像属性。 mirror 如果为 true,则 X 轴按 -1 缩放,且原点的 x 坐标按组件宽度平移。false 如果为 true,则 X 轴按 -1 缩放,且原点的 x 坐标按组件宽度平移。此“镜像”转换的净效果是翻转 X 轴增加的方向,而不更改布局元素相对于其父代的原点的位置。 stretchX stretchY 是在任何其他转换属性之前应用的拉伸比例因子的水平组件。 stretchY 是在任何其他转换属性之前应用的拉伸比例因子的水平组件。 stretchY stretchY 是在任何其他转换属性之前应用的拉伸比例因子的垂直组件。 stretchY 是在任何其他转换属性之前应用的拉伸比例因子的垂直组件。 layoutMatrix3D 在布局计算中使用的 3D 矩阵,用于确定组件及其父代和同代的布局和大小。 在布局计算中使用的 3D 矩阵,用于确定组件及其父代和同代的布局和大小。 layoutMatrix 在布局计算中使用的 2D 矩阵,用于确定组件及其父代和同代的布局和大小。 在布局计算中使用的 2D 矩阵,用于确定组件及其父代和同代的布局和大小。 layoutRotationX 布局转换简便属性。 布局转换简便属性。表示围绕在布局中和计算的转换中使用的布局矩阵的 X 轴的旋转。 layoutRotationY 布局转换简便属性。 布局转换简便属性。表示围绕在布局中和计算的转换中使用的布局矩阵的 Y 轴的旋转。 layoutRotationZ 布局转换简便属性。 布局转换简便属性。表示围绕在布局中和计算的转换中使用的布局矩阵的 Z 轴的旋转。 layoutScaleX 布局转换简便属性。 布局转换简便属性。表示沿着在布局中和计算的转换中使用的布局矩阵的 X 轴的缩放。 layoutScaleY 布局转换简便属性。 布局转换简便属性。表示沿着在布局中和计算的转换中使用的布局矩阵的 Y 轴的缩放。 layoutScaleZ 布局转换简便属性。 布局转换简便属性。表示沿着在布局中和计算的转换中使用的布局矩阵的 Z 轴的缩放。 layoutX 布局转换简便属性。 布局转换简便属性。表示在布局中和计算的转换中使用的布局矩阵的 x 值。 layoutY 布局转换简便属性。 布局转换简便属性。表示在布局中和计算的转换中使用的布局矩阵的 y 值。 layoutZ 布局转换简便属性。 布局转换简便属性。表示在布局中和计算的转换中使用的布局矩阵的 z 值。 transformX 在布局和计算的矩阵中执行旋转和缩放时所围绕的点的 x 值。 在布局和计算的矩阵中执行旋转和缩放时所围绕的点的 x 值。 transformY 在布局和计算的矩阵中执行旋转和缩放时所围绕的点的 y 值。 在布局和计算的矩阵中执行旋转和缩放时所围绕的点的 y 值。 transformZ 在布局和计算的矩阵中执行旋转和缩放时所围绕的点的 z 值。 在布局和计算的矩阵中执行旋转和缩放时所围绕的点的 z 值。 DPIClassification 设备屏幕密度类的枚举。Object 设备屏幕密度类的枚举。在使用 DPI 时,Flex 会将相似的 DPI 值折叠到 DPI 类中。 spark.components.Application.applicationDPIspark.components.Application.runtimeDPIDPI_160 低密度设备的 Density 值。160 低密度设备的 Density 值。 DPI_240 中密度设备的 Density 值。240 中密度设备的 Density 值。 DPI_320 高密度设备的 Density 值。320 高密度设备的 Density 值。 UIComponent UIComponent 类是所有可视组件(交互式和非交互式)的基类。 从 Container 中删除组件时播放。 Flash 9 AIR 1.1 3.0 Flex 3 将组件作为子项添加到 Container 时播放。 Flash 9 AIR 1.1 3.0 Flex 3 组件失去键盘焦点时播放。 Flash 9 AIR 1.1 3.0 Flex 3 组件获得键盘焦点时播放。 Flash 9 AIR 1.1 3.0 Flex 3 用户将鼠标指针滚离组件上方时播放。 Flash 9 AIR 1.1 3.0 Flex 3 用户将鼠标指针滚动到组件上方时播放。 Flash 9 AIR 1.1 3.0 Flex 3 用户在组件上方释放鼠标按键时播放。 Flash 9 AIR 1.1 3.0 Flex 3 用户在组件上方按下鼠标按键时播放。 Flash 9 AIR 1.1 3.0 Flex 3 组件变为不可见时播放。 Flash 9 AIR 1.1 3.0 Flex 3 组件变为可见时播放。 Flash 9 AIR 1.1 3.0 Flex 3 调整组件大小时播放。 Flash 9 AIR 1.1 3.0 Flex 3 移动组件时播放。 Flash 9 AIR 1.1 3.0 Flex 3 创建组件时播放。 Flash 9 AIR 1.1 3.0 Flex 3 All user interface components in Flex extend the UIComponent class. Flex components inherit the following properties from the UIComponent class:

  <mx:tagname
   Properties 
    accessibilityDescription="null"
    accessibilityName="null"
    accessibilityShortcut="null"
    accessibilitySilent="true|false"
    automationName="null"
    cachePolicy="auto|on|off"
    currentState="null"
    doubleClickEnabled="false|true"
    enabled="true|false"
    explicitHeight="NaN"
    explicitMaxHeight="NaN"
    explicitMaxWidth="NaN"
    explicitMinHeight="NaN"
    explicitMinWidth="NaN"
    explicitWidth="NaN"
    focusEnabled="true|false"
    hasFocusableChildren="false|true"
    height="0"
    id=""
    includeInLayout="true|false"
    maxHeight="10000"
    maxWidth="10000"
    measuredHeight=
    measuredMinHeight=
    measuredMinWidth=
    measuredWidth=
    minHeight="0"
    minWidth="0"
    mouseFocusEnabled="true|false"
    percentHeight="NaN"
    percentWidth="NaN"
    scaleX="1.0"
    scaleY="1.0"
    states="null"
    styleName="undefined"
    toolTip="null"
    transitions=""
    validationSubField
    width="0"
    x="0"
    y="0"
   Styles
    bottom="undefined"
    errorColor="0xFF0000"
    focusBlendMode="normal"
    focusSkin="HaloFocusRect""
    focusThickness="2"
    horizontalCenter="undefined"
    layoutDirection="ltr"
    left="undefined"
    right="undefined"
    themeColor="haloGreen"
    top="undefined"
    verticalCenter="undefined"
   Effects
    addedEffect="No default"
    creationCompleteEffect="No default"
    focusInEffect="No default"
    focusOutEffect="No default"
    hideEffect="No default"
    mouseDownEffect="No default"
    mouseUpEffect="No default"
    moveEffect="No default"
    removedEffect="No default"
    resizeEffect="No default"
    rollOutEffect="No default"
    rollOverEffect="No default"
    showEffect="No default"
   Events
    add="No default"
    creationComplete="No default"
    currentStateChange="No default"
    currentStateChanging="No default"
    dragComplete="No default"
    dragDrop="No default"
    dragEnter="No default"
    dragExit="No default"
    dragOver="No default"
    effectEnd="No default"
    effectStart="No default"
    enterState="No default"
    exitState="No default"
    hide="No default"
    initialize="No default"
    invalid="No default"
    mouseDownOutside="No default"
    mouseWheelOutside="No default"
    move="No default"
    preinitialize="No default"
    remove="No default"
    resize="No default"
    show="No default"
    toolTipCreate="No default"
    toolTipEnd="No default"
    toolTipHide="No default"
    toolTipShow="No default"
    toolTipShown="No default"
    toolTipStart="No default"
    updateComplete="No default"
    valid="No default"
    valueCommit="No default"
  >
  
]]>
mx.automation:IAutomationObjectmx.core:IChildListmx.core:IConstraintClientmx.core:IDeferredInstantiationUIComponentmx.core:IFlexDisplayObjectmx.core:IFlexModulemx.core:IInvalidatingmx.managers:ILayoutManagerClientmx.core:IPropertyChangeNotifiermx.core:IRepeaterClientmx.core:IStateClientmx.styles:IAdvancedStyleClientmx.managers:IToolTipManagerClientmx.core:IUIComponentmx.validators:IValidatorListenermx.core:IVisualElementmx.core:FlexSprite UIComponent 类是所有可视组件(交互式和非交互式)的基类。

交互式组件可以参与 Tab 切换和其他几种键盘焦点处理,接受低级事件(如键盘和鼠标输入),还可以被禁用,以便该组件不能收到键盘和鼠标输入。这与非交互式组件(如 Label 和 ProgressBar)相反,非交互式组件只显示内容且不能由用户操作。

UIComponent 类不作为 MXML 标签使用,而作为其他类的基类使用。

mx.core.UIComponenttoolTipStart 用户将鼠标移动到设置了 toolTip 属性的组件上方后,由该组件分派。mx.events.ToolTipEvent.TOOL_TIP_STARTmx.events.ToolTipEvent 用户将鼠标移动到设置了 toolTip 属性的组件上方后,由该组件分派。

ToolTip 事件的顺序为 toolTipStarttoolTipCreatetoolTipShowtoolTipShowntoolTipHidetoolTipEnd

toolTipShown 显示组件的 ToolTip 时由组件分派。mx.events.ToolTipEvent.TOOL_TIP_SHOWNmx.events.ToolTipEvent 显示组件的 ToolTip 时由组件分派。

如果使用 ToolTipManager.showEffect 属性指定了效果,则在停止播放该效果之后分派此事件。

ToolTip 事件的顺序为 toolTipStarttoolTipCreatetoolTipShowtoolTipShowntoolTipHidetoolTipEnd

toolTipShow 要显示组件的 ToolTip 时由组件分派。mx.events.ToolTipEvent.TOOL_TIP_SHOWmx.events.ToolTipEvent 要显示组件的 ToolTip 时由组件分派。

如果使用 ToolTipManager.showEffect 属性指定了效果,则在开始播放该效果之前分派此事件。您可以使用此事件在 ToolTip 出现前对其进行修改。

ToolTip 事件的顺序为 toolTipStarttoolTipCreatetoolTipShowtoolTipShowntoolTipHidetoolTipEnd

toolTipHide 要隐藏组件的 ToolTip 时由组件分派。mx.events.ToolTipEvent.TOOL_TIP_HIDEmx.events.ToolTipEvent 要隐藏组件的 ToolTip 时由组件分派。

如果使用 ToolTipManager.hideEffect 属性指定了效果,则在开始播放该效果之前分派此事件。

ToolTip 事件的顺序为 toolTipStarttoolTipCreatetoolTipShowtoolTipShowntoolTipHidetoolTipEnd

toolTipEnd 已隐藏组件的 ToolTip 并要将其放弃时由组件分派。mx.events.ToolTipEvent.TOOL_TIP_ENDmx.events.ToolTipEvent 已隐藏组件的 ToolTip 并要将其放弃时由组件分派。

如果使用 ToolTipManager.hideEffect 属性指定了效果,则在停止播放该效果后分派此事件。

ToolTip 事件的顺序为 toolTipStarttoolTipCreatetoolTipShowtoolTipShowntoolTipHidetoolTipEnd

toolTipCreate 要创建 ToolTip 时由组件分派。mx.events.ToolTipEvent.TOOL_TIP_CREATEmx.events.ToolTipEvent 要创建 ToolTip 时由组件分派。

如果创建了自己的 IToolTip 对象,并在传递到 toolTipCreate 处理函数的事件对象的 toolTip 属性中置入了对该对象的引用,则 ToolTipManager 将显示您的自定义 ToolTip。否则,ToolTipManager 将创建 ToolTipManager.toolTipClass 的实例以用于显示。

ToolTip 事件的顺序为 toolTipStarttoolTipCreatetoolTipShowtoolTipShowntoolTipHidetoolTipEnd

touchInteractionEnd 不可撤消事件,在组件结束响应 touch 交互用户操作时由组件分派。mx.events.TouchInteractionEvent.TOUCH_INTERACTION_ENDmx.events.TouchInteractionEvent 不可撤消事件,在组件结束响应 touch 交互用户操作时由组件分派。

该事件是冒泡事件,针对开始了 touch 交互(即发生了 mouseDown/touchBegin)的 DisplayObject 进行分派。

响应 touch 交互的组件应侦听 touch 交互事件,从而与其它组件协调用户计划进行哪种类型的 touch 交互以及哪个组件响应此 touch 交互。

Scroller 组件结束响应用户的 touch 交互后,Scroller 组件将分派 touchInteractionEnd 事件以通知其它组件。

touchInteractionStart 不可撤消事件,在组件开始响应 touch 交互用户操作时由组件分派。mx.events.TouchInteractionEvent.TOUCH_INTERACTION_STARTmx.events.TouchInteractionEvent 不可撤消事件,在组件开始响应 touch 交互用户操作时由组件分派。

该事件是冒泡事件,针对开始了 touch 交互(即发生了 mouseDown/touchBegin)的 DisplayObject 进行分派。

响应 touch 交互的组件应侦听 touch 交互事件,从而与其它组件协调用户计划进行哪种类型的 touch 交互以及哪个组件响应此 touch 交互。

正在控制 touch 交互的 Scroller 组件将分派 touchInteractionStart 事件以通知可能响应相同用户的 touch 交互的其它组件。其它组件看到此事件后,应该停止响应 touch 交互,删除指明该组件正在响应 touch 交互的视觉指示,并执行其它清理操作。

touchInteractionStarting 可撤消事件,在组件试图响应 touch 交互用户操作时由组件分派。mx.events.TouchInteractionEvent.TOUCH_INTERACTION_STARTINGmx.events.TouchInteractionEvent 可撤消事件,在组件试图响应 touch 交互用户操作时由组件分派。

该事件是冒泡事件,针对开始了 touch 交互(即发生了 mouseDown/touchBegin)的 DisplayObject 进行分派。

响应 touch 交互的组件应侦听 touch 交互事件,从而与其它组件协调用户计划进行哪种类型的 touch 交互以及哪个组件响应此 touch 交互。

要控制 touch 交互的 Scroller 组件将分派 touchInteractionStarting 事件以通知可能响应相同用户的 touch 交互的其它组件。其它组件可以利用此机会取消 Scroller 的操作,从而保持对该 touch 交互的控制。

stateChangeInterrupted 在组件中断转换到当前状态从而切换到新状态时分派。mx.events.FlexEvent.STATE_CHANGE_INTERRUPTEDmx.events.FlexEvent 在组件中断转换到当前状态从而切换到新状态时分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

stateChangeComplete 在组件进入新状态且切换到该状态的状态转换动画已经播放完时分派。mx.events.FlexEvent.STATE_CHANGE_COMPLETEmx.events.FlexEvent 在组件进入新状态且切换到该状态的状态转换动画已经播放完时分派。如果不播放状态转换,会立即分派此事件。如果组件切换到其它状态,而转换仍正在进行时,该组件转换到新状态后就会分派此事件。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

exitState 在组件即将退出视图状态之前分派。mx.events.FlexEvent.EXIT_STATEmx.events.FlexEvent 在组件即将退出视图状态之前分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

enterState 在组件已进入视图状态之后分派。mx.events.FlexEvent.ENTER_STATEmx.events.FlexEvent 在组件已进入视图状态之后分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

currentStateChange 视图状态更改后分派。mx.events.StateChangeEvent.CURRENT_STATE_CHANGEmx.events.StateChangeEvent 视图状态更改后分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

currentStateChanging 在 currentState 属性更改后但视图状态更改前分派。mx.events.StateChangeEvent.CURRENT_STATE_CHANGINGmx.events.StateChangeEventcurrentState 属性更改后但视图状态更改前分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

effectEnd 在一个效果结束后分派。mx.events.EffectEvent.EFFECT_ENDmx.events.EffectEvent 在一个效果结束后分派。

在触发此事件之前,效果将进行最后一组可视更改,但是这些更改将不会呈示在屏幕上。因此,您可能需要使用 callLater() 方法延迟任何其他更改,您希望在屏幕上呈示更改之后再进行这些更改。

effectStop 在停止某个效果(仅当对该效果调用 stop() 时发生)之后分派。mx.events.EffectEvent.EFFECT_STOPmx.events.EffectEvent 在停止某个效果(仅当对该效果调用 stop() 时发生)之后分派。

该效果接着将在完成时分派 EFFECT_END 事件。EFFECT_STOP 事件的目的是让侦听器知道该效果过早结束,而不是自然结束或对 end() 调用后而结束。

effectStart 在即将开始播放效果前分派。mx.events.EffectEvent.EFFECT_STARTmx.events.EffectEvent 在即将开始播放效果前分派。

在触发此事件后,效果才会开始更改可视效果。

dragStart 启动拖动操作时,由拖动启动器分派。mx.events.DragEvent.DRAG_STARTmx.events.DragEvent 启动拖动操作时,由拖动启动器分派。基于列表的控件在内部使用此事件;实现拖放操作时不会处理此事件。如果您希望控制拖放操作的开始,请使用 mouseDownmouseMove 事件。 dragComplete 在拖动操作完成时(将拖动的数据放到放置目标时或在没有执行放置操作的情况下结束拖放操作时)由拖动启动器(作为要拖动的数据源的组件)分派。mx.events.DragEvent.DRAG_COMPLETEmx.events.DragEvent 在拖动操作完成时(将拖动的数据放到放置目标时或在没有执行放置操作的情况下结束拖放操作时)由拖动启动器(作为要拖动的数据源的组件)分派。

您可以使用此事件执行拖放操作的任意最终清理。例如,将 List 控件项目从一个列表拖动到另一个列表时,如果不再需要此 List 控件项目,则可以将其从源列表中删除。

将数据从一个 Tree 控件拖动到另一个控件时,如果在 Tree 控件 dragComplete 事件的事件处理函数调用 Event.preventDefault(),它将阻止该放置操作。

dragDrop 用户在放置目标上释放鼠标时由放置目标分派。mx.events.DragEvent.DRAG_DROPmx.events.DragEvent 用户在放置目标上释放鼠标时由放置目标分派。

可以使用此事件处理函数将拖动数据添加到放置目标。

将数据从一个 Tree 控件拖动到另一个控件时,如果在 Tree 控件 dragDrop 事件的事件处理函数调用 Event.preventDefault(),它将阻止该放置操作。

dragExit 用户在组件外拖动但没有将数据放置到目标时,由组件分派。mx.events.DragEvent.DRAG_EXITmx.events.DragEvent 用户在组件外拖动但没有将数据放置到目标时,由组件分派。

如果在处理 dragEnterdragOver 事件时修改了放置目标的外观,则可以使用此事件将放置目标还原为正常外观。

dragOver 在拖动操作期间,当用户在鼠标位于组件上方的情况下移动鼠标时,由组件分派。mx.events.DragEvent.DRAG_OVERmx.events.DragEvent 在拖动操作期间,当用户在鼠标位于组件上方的情况下移动鼠标时,由组件分派。在 Flash Player 中,将项目拖动到有效放置目标上时,分派此事件。在 AIR 中,将项目拖动到任一组件上方(即使该组件不是有效的放置目标)时,分派此事件。

在处理函数中,您可以通过更改放置目标的外观向用户提供可视反馈,即组件可以接受此拖动。例如,您可以围绕放置目标绘制一个边框,或者为放置目标提供焦点。

您应该对此事件进行处理,从而在允许放置之前执行其他逻辑,例如,将数据放置在放置目标中的各不同位置,读取键盘输入以确定拖放操作是拖动还是复制拖放数据,或者根据拖放操作类型提供不同类型的可视反馈。

您还可以通过更改 DragManager.showFeedback() 方法来更改拖动操作的类型。action 属性的默认值为 DragManager.MOVE

mx.managers.DragManager
dragEnter 当用户在拖动操作过程中将鼠标移动到某个组件所处的位置时,由该组件分派。mx.events.DragEvent.DRAG_ENTERmx.events.DragEvent 当用户在拖动操作过程中将鼠标移动到某个组件所处的位置时,由该组件分派。如果应用程序在 Flash Player 中运行,则当用户将鼠标移至任何组件所处的位置时,将多次分派此事件。如果应用程序在 AIR 中运行,则只分派此事件一次。

为使放置目标有效,您必须为此事件定义处理函数。在处理函数中,您可以通过更改放置目标的外观向用户提供可视反馈,即组件可以接受此拖动。例如,您可以围绕放置目标绘制一个边框,或者为放置目标提供焦点。

如果希望接受拖动,您必须调用 DragManager.acceptDragDrop() 方法。如果不调用 acceptDragDrop(),您将无法获得其他任何拖动事件。

在 Flash Player 中,action 属性的值始终为 DragManager.MOVE,即使是执行复制操作也不例外。这是因为在控件识别出已按下 Ctrl 键来指示复制之前,即已发生 dragEnter 事件。dragOver 事件的事件对象的 action 属性确实包含指示拖动操作类型的值。您可以通过调用 DragManager.showFeedback() 方法来更改拖动操作的类型。

在 AIR 中,action 属性的默认值为 DragManager.COPY

由于 Tree 控件中数据的构建方式与其他基于列表的控件不同,所以 Tree 控件处理拖放的方式也与这些控件不同。对于 Tree 控件,仅当您在同一 Tree 控件中移动或复制数据时,或者将数据复制到其他 Tree 控件时,dragDrop 事件的事件处理函数才执行操作。如果您是通过将一个 Tree 控件中的数据拖放到另一个 Tree 控件来移动数据,则实际上是由 dragComplete 事件的事件处理函数(而非 dragDrop 事件的事件处理函数)执行将该数据添加到目标 Tree 控件的操作,并从源 Tree 控件中删除该数据。这非常有用,因为要重设将要删除的数据的父级,Flex 必须先将该数据从源 Tree 控件中删除。

mx.managers.DragManager
valid 当组件由 Validator 监控并且成功通过验证时分派。mx.events.FlexEvent.VALIDmx.events.FlexEvent 当组件由 Validator 监控并且成功通过验证时分派。 invalid 当组件由 Validator 监控且未通过验证时分派。mx.events.FlexEvent.INVALIDmx.events.FlexEvent 当组件由 Validator 监控且未通过验证时分派。 valueCommit 当以编程方式或通过用户交互更改值时分派。mx.events.FlexEvent.VALUE_COMMITmx.events.FlexEvent 当以编程方式或通过用户交互更改值时分派。

由于以编程方式进行更改会触发此事件,所以请确保任何 valueCommit 事件处理函数都不会更改可引发另一 valueCommit 事件的值。例如,不要在 valueCommit 事件处理函数中更改控件的 dataProvider 属性。

mouseWheelOutside 当用户使用鼠标滚轮滚动到使用 PopUpManager 打开的某个组件外部时,从该组件分派。mx.events.FlexMouseEvent.MOUSE_WHEEL_OUTSIDEmx.events.FlexMouseEvent 当用户使用鼠标滚轮滚动到使用 PopUpManager 打开的某个组件外部时,从该组件分派。 mouseDownOutside 当用户在使用 PopUpManager 打开的某个组件外部单击时,从该组件分派。mx.events.FlexMouseEvent.MOUSE_DOWN_OUTSIDEmx.events.FlexMouseEvent 当用户在使用 PopUpManager 打开的某个组件外部单击时,从该组件分派。 show 当对象的状态从不可见变为可见时分派。mx.events.FlexEvent.SHOWmx.events.FlexEvent 当对象的状态从不可见变为可见时分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

resize 在调整组件大小时分派。mx.events.ResizeEvent.RESIZEmx.events.ResizeEvent 在调整组件大小时分派。

您可以通过以下方法调整组件大小:设置 widthheight 属性、调用 setActualSize() 方法、在该组件上或其他组件上设置下列属性之一以使 LayoutManager 需要更改该组件的 widthheight 属性:

  • minWidth
  • minHeight
  • maxWidth
  • maxHeight
  • explicitWidth
  • explicitHeight

在更改该属性之前,不会分派 resize 事件。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

remove 当组件通过使用 removeChild()、removeChildAt()、removeElement() 或 removeElementAt() 方法作为内容子项从容器中删除后分派。mx.events.FlexEvent.REMOVEmx.events.FlexEvent 当组件通过使用 removeChild()removeChildAt()removeElement()removeElementAt() 方法作为内容子项从容器中删除后分派。如果已使用 rawChildren.removeChild()rawChildren.removeChildAt() 方法将组件作为非内容子项从容器中删除,则不会分派此事件。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

preinitialize 在组件初始化序列开始时分派。mx.events.FlexEvent.PREINITIALIZEmx.events.FlexEvent 在组件初始化序列开始时分派。分派此事件时,组件恰处于原始状态。许多组件(如 Button 控件)可创建内部子组件来实现功能;例如,Button 控件可创建内部 UITextField 组件来呈示其标签文本。当 Flex 分派 preinitialize 事件时,尚未创建组件的子项(包括内部子项)。 move 移动对象后分派。mx.events.MoveEvent.MOVEmx.events.MoveEvent 移动对象后分派。

您可以通过以下方法移动组件:设置 xy 属性、调用 move() 方法,在该组件上或其他组件上设置下列属性以使 LayoutManager 更改该组件的 xy 属性:

  • minWidth
  • minHeight
  • maxWidth
  • maxHeight
  • explicitWidth
  • explicitHeight

调用 move() 方法时,将在此方法返回之前分派 move 事件。在其他所有情形下,在该属性更改之前都不会分派 move 事件。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

initialize 当组件完成构建并设置了所有初始化属性后分派。mx.events.FlexEvent.INITIALIZEmx.events.FlexEvent 当组件完成构建并设置了所有初始化属性后分派。

初始化阶段结束后,就处理了属性,并测量、布置和绘制了组件,然后将分派 creationComplete 事件。

hide 当对象的状态从可见变为不可见时分派。mx.events.FlexEvent.HIDEmx.events.FlexEvent 当对象的状态从可见变为不可见时分派。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

updateComplete 当调用了对象的 commitProperties()、measure() 和 updateDisplayList() 方法后分派(如果需要)。mx.events.FlexEvent.UPDATE_COMPLETEmx.events.FlexEvent 当调用了对象的 commitProperties()measure()updateDisplayList() 方法后分派(如果需要)。

这是在显示组件前最后一次修改组件的机会。已提交所有属性,并已测量和布置了组件。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

creationComplete 当组件完成其构建、属性处理、测量、布置和绘制时分派。mx.events.FlexEvent.CREATION_COMPLETEmx.events.FlexEvent 当组件完成其构建、属性处理、测量、布置和绘制时分派。

此时,根据组件的 visible 属性,即使绘制完组件后,该组件仍然不可见。

add 当组件通过使用 addChild()、addChildAt()、addElement() 或 addElementAt() 方法作为内容子项添加到容器后分派。mx.events.FlexEvent.ADDmx.events.FlexEvent 当组件通过使用 addChild()addChildAt()addElement()addElementAt() 方法作为内容子项添加到容器后分派。如果已使用 rawChildren.addChild()rawChildren.addChildAt() 方法将该组件作为非内容子项添加到容器,则不会分派此事件。

仅当有一个或多个相关侦听器附加到分派对象时,才会分派此事件。

UIComponent 构造函数。 构造函数。 addStyleClient 将非可视样式客户端添加到该组件实例。如果 styleClient 参数为 DisplayObjectArgumentErrorArgumentErrorstyleClientmx.styles:IAdvancedStyleClient将添加到该组件的非可视样式客户端列表的 IAdvancedStyleClient 将非可视样式客户端添加到该组件实例。调用此方法后,样式客户端将继承该组件实例的样式更改。为 DisplayObject 的样式客户端必须使用 addChildaddChildAt 方法,才能添加到 UIComponent 中。作为副作用,该方法会设置 styleClient 参数的 styleParent 属性引用 UIComponent 的该实例。如果 styleClient 参数已具有 styleParent,该方法会调用上一个 styleParent 中的 removeStyleClientremoveStyleClientmx.styles.IAdvancedStyleClientadjustFocusRect 调整焦点矩形。objnull要修改其焦点矩形的组件。如果省略,则默认值为此 UIComponent 对象。 调整焦点矩形。 applyComputedMatrix 提交计算的矩阵,该矩阵是基于布局矩阵以及 flash displayObject 的转换的转换偏移量而构建的。 提交计算的矩阵,该矩阵是基于布局矩阵以及 flash displayObject 的转换的转换偏移量而构建的。 attachOverlay 这是一个内部方法,供 Flex 框架用于支持 Dissolve 效果。 这是一个内部方法,供 Flex 框架用于支持 Dissolve 效果。您不必调用或覆盖它。 callLater 排队稍后调用的函数。method对稍后执行的方法的引用。 argsnull对象 Array,给出要传递给此方法的参数。 排队稍后调用的函数。

在每次更新屏幕之前,Flash Player 或 AIR 都会调用为更新预定的函数集。有时,应在下次更新时调用函数,以执行为当前更新预定的其余代码。部分功能(如效果)可能会延迟排队的函数,直到功能完成为止。

canSkipMeasurement 确定是否可以跳过对 measure() 方法的调用。measureSizes() 方法可以跳过对 measure() 方法的调用时,返回 true。例如,同时设置 explicitWidthexplicitHeight 时,它通常为 true。对于路径,当路径的界限未改变时,此为 true 确定是否可以跳过对 measure() 方法的调用。 childrenCreated 创建子对象后执行任何最终处理。 创建子对象后执行任何最终处理。此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。 clearStyle 删除此组件实例的样式属性。styleProp样式属性的名称。 删除此组件实例的样式属性。

此操作不一定会使 getStyle() 方法返回 undefined

commitProperties 处理对组件设置的属性。 处理对组件设置的属性。此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。

您无需直接调用此方法。当您使用 addChild() 方法向容器中添加组件时,或调用组件的 invalidateProperties() 方法时,Flex 都会调用 commitProperties() 方法。应在调用 measure() 方法之前调用 commitProperties() 方法。这允许您设置 measure() 方法可能会用到的属性值。

一些组件的属性可能会影响需要创建的子对象的数目或种类,也有些组件的属性彼此之间会相互影响(例如 horizontalScrollPolicyhorizontalScrollPosition 属性)。通常,最好在启动时一次性处理所有这些属性以避免重复工作。

contentToGlobal 将 Point 对象由内容坐标转换为全局坐标。具有相对于舞台的坐标的 Point 对象。 point一个 Point 对象,用于指定内容坐标系中的 xy 坐标作为属性。 Point 对象从内容坐标转换为全局坐标。内容坐标指定的像素位置随组件内容的左上角而变化,并包括组件的所有内容区域,甚至包括当前剪切掉但必须能够通过滚动组件访问的任何区域。您可以使用内容坐标系设置和获取使用绝对定位的容器中子项的位置。全局坐标指定的像素位置随舞台的左上角,即应用窗口的最外侧边缘而变化。 globalToContent()contentToLocal 将 Point 对象由内容坐标转换为本地坐标。Point,具有随本地坐标系而变化的坐标的 Point 对象。 point一个 Point 对象,用于指定内容坐标系中的 xy 坐标作为属性。 Point 对象由内容坐标转换为本地坐标。内容坐标指定的像素位置随组件内容的左上角而变化,并包括组件的所有内容区域,甚至包括当前剪切掉但必须能够通过滚动组件访问的任何区域。您可以使用内容坐标系设置和获取使用绝对定位的容器中子项的位置。本地坐标指定的像素位置随组件的左上角而变化。 contentToGlobal()createAutomationIDPartWithRequiredProperties 返回标识此容器中的子项的一组属性作为自动 ID。描述稍后可用于解析组件的子项的几组属性。 childmx.automation:IAutomationObject为其提供 ID 的子项。 properties形成该 ID 需要考虑的子项。 返回标识此容器中的子项的一组属性作为自动 ID。在应用程序的生命期内,不应更改这些值。 createAutomationIDPart 返回标识此容器中的子项的一组属性。描述稍后可用于解析组件的子项的几组属性。 childmx.automation:IAutomationObject为其提供 ID 的子项。 返回标识此容器中的子项的一组属性。在应用程序的生命期内,不应更改这些值。 createChildren ‏‏创建组件的子对象。 ‏‏创建组件的子对象。此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。

可在自身内部创建其他组件或对象的组件称为组合组件。例如,Flex ComboBox 控件实际上包含一个 TextInput 控件(用于定义 ComboBox 的文本区域)和一个 Button 控件(用于定义 ComboBox 箭头)。组件实现 createChildren() 方法以在其内部创建子对象(如其他组件)。

createChildren() 方法的覆盖内部,您可以调用 addChild() 方法来添加各个子对象。

您无需直接调用此方法。Flex 会调用 createChildren() 方法来响应对 addChild() 方法的调用,用以将组件添加到其父项。

createInFontContext 根据所用的嵌入字体使用上下文创建新对象。在拥有嵌入字体的 SWF 上下文中创建的类实例。如果此对象不使用嵌入字体,则在此对象的上下文中创建类。 classObj要创建的类。 根据所用的嵌入字体使用上下文创建新对象。

此方法用于解决在将框架加载为 RSL(RSL 具有自己的 SWF 上下文)情况下,访问应用程序 SWF 中嵌入的字体问题。嵌入字体只能从创建它们的 SWF 文件上下文中访问。通过使用应用程序 SWF 上下文,RSL 可以在能够访问应用程序的嵌入字体的应用程序 SWF 上下文中创建对象。

仅当设置此对象的字体样式后才调用此方法。

createInModuleContext 使用给定的 moduleFactory 创建对象。在 moduleFactory 上下文中创建的对象。 moduleFactorymx.core:IFlexModuleFactory在其中创建类的 moduleFactory;可以为 null。 className要创建的类的名称。 使用给定的 moduleFactory 创建对象。如果 moduleFactory 为 null,或者无法使用模块工厂创建对象,则重用 systemManager 创建对象。 createReferenceOnParentDocument 在 IUIComponent 对象的父项文档对象上创建对此对象的 id 引用。parentDocumentmx.core:IFlexDisplayObject此 IUIComponent 对象的父项。 在 IUIComponent 对象的父项文档对象上创建对此对象的 id 引用。此函数可以对一个或多个 repeater 中的象创建多维引用,如 b[2][4]。如果索引为 null,它将创建一个简单的非 Array 引用。 deleteReferenceOnParentDocument 在 IUIComponent 对象的父项文档对象上删除对此对象的 id 引用。parentDocumentmx.core:IFlexDisplayObject此 IUIComponent 对象的父项。 在 IUIComponent 对象的父项文档对象上删除对此对象的 id 引用。此函数可以对一个或多个 Repeater 中的对象删除多维引用,如 b[2][4]。如果索引为 null,它将删除简单的非 Array 引用。 determineTextFormatFromStyles 返回与此 UIComponent 的文本样式对应的 UITextFormat 对象。与此 UIComponent 的文本样式对应的 UITextFormat 对象。 mx.core:UITextFormat 返回与此 UIComponent 的文本样式对应的 UITextFormat 对象。 dispatchEvent 将事件调度到事件流中。如果成功调度了事件,则值为 true。值 false 表示失败或对事件调用了 preventDefault() 方法。 event调度到事件流中的 Event 对象。如果正在重新调度事件,则会自动创建此事件的一个克隆。在调度了事件后,其 target 属性将无法更改,因此您必须创建此事件的一个新副本以能够重新调度。 将事件调度到事件流中。事件目标是对其调用 dispatchEvent() 方法的 EventDispatcher 对象。 dispatchPropertyChangeEvent 更新属性时分派 PropertyChangeEvent 的 Helper 方法。prop已更改的属性的名称。 oldValue属性的旧值。 value属性的新值。 更新属性时分派 PropertyChangeEvent 的 Helper 方法。 drawFocus 在此组件周围显示或隐藏焦点指示符。isFocused确定是否应显示焦点指示符。设置为 true 可以显示焦点指示符。设置为 false 可以隐藏焦点指示符。 在此组件周围显示或隐藏焦点指示符。

UIComponent 通过创建由 focusSkin 样式指定的类实例并将其适当定位来实现此控制。

drawRoundRect 通过编程方式在此外观的 Graphics 对象中绘制一个矩形。x此外观中矩形左上角的水平位置。 y此外观中矩形左上角的垂直位置。 w矩形的宽度(以像素为单位)。 h矩形的高度(以像素为单位)。 rnull矩形的角半径。可以是 null、Number 或 Object。如果为 null,则表示该角应为方形而不是弧形。如果为 Number,则为所有四个角指定相同半径(以像素为单位)。如果为 Object,则应具有 tltrblbr 属性,这些属性值是用于指定左上角、右上角、左下角、右下角的半径的 Number(以像素为单位)。例如,您可以传递简单 Object,如 { tl: 5, tr: 5, bl: 0, br: 0 }。默认值为 null(方形角)。 cnull填充的 RGB 颜色。可以是 null、uint 或 Array。如果为 null,则不为矩形填充颜色。如果为 uint,则会指定一个 RGB 填充色。例如,传递 0xFF0000 可填充红色。如果为 Array,则应包含用于指定渐变颜色的 uint。例如,传递 [ 0xFF0000, 0xFFFF00, 0x0000FF ] 可填充红-黄-蓝渐变。在渐变中最多可以指定 15 种颜色。默认值为 null(无填充颜色)。 alphanull用于填充的 Alpha 值。可以是 null、Number 或 Array。如果 color 为空,则忽略此参数。如果 color 是用于指定 RGB 填充颜色的 uint,则 alpha 应该是用于指定填充透明度的 Number,其中 0.0 表示完全透明,1.0 表示完全不透明。在本例中,您还可以通过传递空值而不是 1.0 来指定完全不透明。如果 color 是用于指定渐变颜色的 Array,则 alpha 应该是长度相同的数字 Array,用于为渐变指定相应的 alpha 值。在本例中,默认值为 null(完全不透明)。 rotnull用于渐变填充的 Matrix 对象。可使用实用程序方法 horizontalGradientMatrix()verticalGradientMatrix()rotatedGradientMatrix() 来创建此参数的值。 gradientnull渐变填充的类型。可能的值为 GradientType.LINEARGradientType.RADIAL。(GradientType 类位于 flash.display 包中。) ratiosnull 指定颜色的分布。条目数必须与在 color 参数中定义的颜色数匹配。各值均定义 100% 采样的颜色所在位置的宽度百分比。值 0 表示渐变框中的左侧位置,255 表示渐变框中的右侧位置。 holenull应从另一个实心填充的圆角矩形 { x: #, y: #, w: #, h: #, r: # 或 { br: #, bl: #, tl: #, tr: # } } 中央切去的圆角矩形洞 通过编程方式在此外观的 Graphics 对象中绘制一个矩形。

矩形可以有圆角。其边缘使用 Graphics 对象的当前线条样式。可以使用纯色填充、渐变填充或无填充。纯色填充可以使用 Alpha 透明度。渐变填充可以为线性渐变或放射状渐变。可在沿着渐变的指定点上至多指定 15 个颜色和 Alpha 值,可为渐变指定旋转角度和转换矩阵。最后,该矩形可具有从其上切去的圆角矩形洞。

该通用矩形绘制例程被很多外观所使用。该例程调用 drawRect()drawRoundRect() 方法(在 flash.display.Graphics 类中)在此外观的 Graphics 对象中进行绘制。

flash.display.Graphics.beginGradientFill()
effectFinished 停止在组件上播放效果实例时,由效果实例调用。effectInstmx.effects:IEffectInstance组件上正在播放的效果实例对象。 停止在组件上播放效果实例时,由效果实例调用。您可以使用此方法还原 effectStarted() 方法在开始播放效果时对组件所做的修改,或在效果结束时,执行一些其他操作。 effectStarted 开始在组件上播放效果实例时,由效果实例调用。effectInstmx.effects:IEffectInstance组件上正在播放的效果实例对象。 开始在组件上播放效果实例时,由效果实例调用。作为效果的一部分,您可以使用此方法来修改组件。在效果结束时,您可以使用 effectFinished() 方法还原修改。 endEffectsStarted 结束组件上当前播放的所有效果。 结束组件上当前播放的所有效果。 executeBindings 执行 UIComponent 对象是目标的所有绑定。recursefalse以递归方式为此组件的子项执行绑定。 执行 UIComponent 对象是目标的所有绑定。 finishPrint 打印完成后调用。obj包含组件的一些属性,用于将其还原到打印前的状态。 targetmx.core:IFlexDisplayObject刚刚完成打印的组件。该组件可能是当前组件,也可能是其中的一个子项。 打印完成后调用。对于 UIComponent 类,此方法不执行任何操作。Flex 容器将覆盖此方法以在打印后还原容器。

此方法通常不适用于应用程序开发人员。

mx.printing.FlexPrintJob
focusInHandler 当 UIComponent 对象获得焦点时调用的事件处理函数。event事件对象。 当 UIComponent 对象获得焦点时调用的事件处理函数。如果覆盖此方法,请确保调用基类版本。 focusOutHandler 当 UIComponent 对象失去焦点时调用的事件处理函数。event事件对象。 当 UIComponent 对象失去焦点时调用的事件处理函数。如果覆盖此方法,请确保调用基类版本。 getAutomationChildAt 在指定的索引位置提供自动化对象。位于指定索引位置处的子项。 mx.automation:IAutomationObjectindex要返回的子项的索引 在指定的索引位置提供自动化对象。该列表不应包含任何复合子项。 getAutomationChildren 提供自动化对象列表。自动子代。 提供自动化对象列表。该列表不应包含任何复合子项。 getBoundsXAtSize 按指定的元素大小,返回元素边界的 x 坐标。按指定的元素大小,元素边界的 x 坐标。 width元素的界限宽度,或要使用首选宽度的 NaN。 height元素的界限高度,或要使用首选高度的 NaN。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 x 坐标。边框位于元素的父坐标空间中,并基于指定的边界大小、布局位置和布局转换矩阵进行计算。 按指定的元素大小,返回元素边界的 x 坐标。

如果将元素大小调整为特定尺寸,则此方法通常在调用 measure() 方法期间由布局使用,以预测该元素将来的位置。

getBoundsYAtSize 按指定的元素大小,返回元素边界的 y 坐标。按指定的元素大小,元素边界的 y 坐标。 width元素的界限宽度,或要使用首选宽度的 NaN。 height元素的界限高度,或要使用首选高度的 NaN。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 y 坐标。边框位于元素的父坐标空间中,并基于指定的边界大小、布局位置和布局转换矩阵进行计算。 按指定的元素大小,返回元素边界的 y 坐标。如果将元素大小调整为特定尺寸,则此方法通常在调用 measure() 期间由布局使用,以预测该元素将来的位置。 getClassStyleDeclarations 查找此 UIComponent 实例的类型选择器。此 UIComponent 实例的类型选择器 Array。 查找此 UIComponent 实例的类型选择器。算法沿 superclass 链进行。例如,假设 MyButton 类扩展了 Button。MyButton 实例将先查找 MyButton 类型选择器,然后查找 Button 类型选择器,接着查找 UIComponent 类型选择器。(我们认为 superclass 链截止到 UIComponent,而不是 Object。) getConstraintValue 返回一个约束布局值,这与获取此组件的约束样式的方式类似。返回布局约束值,可以用两种形式中的任意一种指定该值。可以将其指定为数值字符串,如 "10",还可以将其指定为 "标识符:数值" 形式的字符串。对于 "标识符:数值" 字符串,标识符为 ConstraintRow 或 ConstraintColumn 的 id。例如,"cc1:10" 的值指定具有 id "cc1" 的 ConstraintColumn 的值为 10。 constraintName约束样式的名称,可以是以下任意一个:left、right、top、bottom、verticalCenter、horizontalCenter、baseline 返回一个约束布局值,这与获取此组件的约束样式的方式类似。 getExplicitOrMeasuredHeight 确定是使用显式高度还是测量高度的一种简便方法 一个 Number,在已定义的情况下是 explicitHeight,在未定义的情况下是 measuredHeight。 确定是使用显式高度还是测量高度的一种简便方法 getExplicitOrMeasuredWidth 确定是使用显式宽度还是测量宽度的一种简便方法 一个 Number,在已定义的情况下是 explicitWidth,在未定义的情况下是 measuredWidth。 确定是使用显式宽度还是测量宽度的一种简便方法 getFocus 获取当前具有焦点的对象。具有焦点的对象。 获取当前具有焦点的对象。它可能并非此对象。请注意,此方法不一定返回具有焦点的组件。该实例可能返回组件中具有焦点的内部子组件。若要获取具有焦点的组件,请使用 focusManager.focus 属性。 getLayoutBoundsHeight 返回元素的布局高度。元素的布局高度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的布局大小和布局转换矩阵进行计算。 返回元素的布局高度。这是元素在屏幕上进行绘制时所用的大小。 getLayoutBoundsWidth 返回元素的布局宽度。元素的布局宽度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的布局大小和布局转换矩阵进行计算。 返回元素的布局宽度。这是元素在屏幕上进行绘制时所用的大小。 getLayoutBoundsX 返回元素在屏幕上进行绘制时所用的 x 坐标。元素在屏幕上进行绘制时所用的 x 坐标。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 x 坐标。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 返回元素在屏幕上进行绘制时所用的 x 坐标。 getLayoutBoundsY 返回元素在屏幕上进行绘制时所用的 y 坐标。元素在屏幕上进行绘制时所用的 y 坐标。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 y 坐标。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 返回元素在屏幕上进行绘制时所用的 y 坐标。 getLayoutMatrix3D 返回此元素的布局转换 Matrix3D。此元素的布局转换 Matrix3D。不要直接修改返回值,请调用 setLayoutMatrix() 方法。 返回此元素的布局转换 Matrix3D。

此矩阵通常由组件的转换属性定义,例如,xyzrotationXrotationYrotationZscaleXscaleYscaleZtransformXtransformY。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets 属性。

getLayoutMatrix 返回用于相对于其同级组件计算组件的布局的转换矩阵。此元素的布局转换 Matrix。不要直接修改返回值;请调用 setLayoutMatrix() 方法。 返回用于相对于其同级组件计算组件的布局的转换矩阵。

此矩阵通常由组件的 2D 属性(如 xyrotationscaleXscaleYtransformXtransformY)定义。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets 属性。

getMaxBoundsHeight 返回元素的最大高度。元素的最大高度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框高度。边框位于元素的父坐标空间中,并基于元素的最大大小和布局转换矩阵进行计算。 返回元素的最大高度。 getMaxBoundsWidth 返回元素的最大宽度。元素的最大宽度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的最大大小和布局转换矩阵进行计算。 返回元素的最大宽度。 getMinBoundsHeight 返回元素的最小高度。元素的最大高度。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框高度。边框位于元素的父坐标空间中,并基于元素的最小大小和布局转换矩阵进行计算。 返回元素的最小高度。 getMinBoundsWidth 返回元素的最小宽度。元素的最大宽度。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的最小大小和布局转换矩阵进行计算。 返回元素的最小宽度。 getPreferredBoundsHeight 返回元素的首选高度。返回元素的首选高度。首选高度通常基于默认元素大小和任何显式覆盖。对于 UIComponent,该值与 getExplicitOrMeasuredHeight() 方法所返回的值相同。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框高度。边框位于元素的父坐标空间中,并基于元素的首选大小和布局转换矩阵进行计算。 返回元素的首选高度。 getPreferredBoundsWidth 返回元素的首选宽度。返回元素的首选宽度。首选宽度通常基于默认元素大小和任何显式覆盖。对于 UIComponent,该值与 getExplicitOrMeasuredWidth() 方法所返回的值相同。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的首选大小和布局转换矩阵进行计算。 返回元素的首选宽度。 getRepeaterItem 返回 dataProvider 中由指定的 Repeater 用来生成此 Repeater 的项目;如果此 Repeater 未重复,则返回 null。请求的 repeater 项目。 whichRepeater-1Repeater 的编号,最外侧的值为 0,依此向内类推。 返回 dataProvider 中由指定的 Repeater 用来生成此 Repeater 的项目;如果此 Repeater 未重复,则返回 null。对于最外侧的 Repeater,whichRepeater 参数为 0;对于向内数的下一个 Repeater,此参数为 1,依此类推。如果尚未指定 whichRepeater,则使用最内侧的 Repeater。 getStyle 获取已在此组件的样式查找链中的某个位置设置过的样式属性。样式值。 styleProp样式属性的名称。 获取已在此组件的样式查找链中的某个位置设置过的样式属性。

因为此方法同样可用于获取任何类型的样式属性,所以返回值可能是 Boolean、String、Number、int、uint(用于 RGB 颜色)、Class(用于外观)或任何类型的对象。因此,只需将返回类型指定为 ~~。

如果要获取特定的样式属性,您需要了解其类型,而且通常希望将结果存储在该类型的某个变量中。无需将 ~~ 转换为该类型。

var backgroundColor:uint = getStyle("backgroundColor");

如果在样式查找链中的任何位置都未设置样式属性,则 getStyle() 的返回值为 undefined。请注意,undefined 是一个特殊值,它与 false""NaN0null 均不同。如果没有有效的样式值,则总是 undefined。可以使用方法 IStyleManager2.isValidStyleValue() 来测试是否设置了值。

globalToContent 将 Point 对象由全局坐标转换为内容坐标。Point,具有随组件而变化的坐标的 Point 对象。 point一个 Point 对象,用于指定全局 (Stage) 坐标系中的 xy 坐标作为属性。 Point 对象由全局坐标转换为内容坐标。全局坐标指定的像素位置随舞台的左上角,即应用窗口的最外侧边缘而变化。内容坐标指定的像素位置随组件内容的左上角而变化,并包括组件的所有内容区域,甚至包括当前剪切掉但必须能够通过滚动组件访问的任何区域。您可以使用内容坐标系设置和获取使用绝对定位的容器中子项的位置。 contentToGlobal()hasCSSState 如果 currentCSSState 不为 null,则返回 true。如果 currentCSSState 不为 null,则返回 true。默认情况下,currentCSSStatecurrentState 相同。如果状态不存在,则返回 false。 如果 currentCSSState 不为 null,则返回 true。通常,您无需直接调用此方法。而是由 mx.styles.CSSCondition.matchesStyleClient() 方法进行调用。

请注意,Spark 组件将其外观状态用作伪状态。Halo 组件使用 currentState 属性。

hasState 是否已定义指定的状态 stateName正在检查的状态的名称。 horizontalGradientMatrix 返回一个框 Matrix,在绘制水平渐变时可以将其作为 rot 参数传递给 drawRoundRect() 方法。水平渐变的 Matrix。 x渐变的左坐标(以像素为单位)。 y渐变的顶坐标(以像素为单位)。 width渐变的宽度(以像素为单位)。 height渐变的高度(以像素为单位)。 返回一个框 Matrix,在绘制水平渐变时可以将其作为 rot 参数传递给 drawRoundRect() 方法。

由于性能原因,该 Matrix 存储在一个静态变量中,通过调用 horizontalGradientMatrix()verticalGradientMatrix() 可以重复使用此变量。因此,您应该在再次调用 horizontalGradientMatrix()verticalGradientMatrix() 之前将生成的 Matrix 传递给 drawRoundRect()

initAdvancedLayoutFeatures 对于组件的某些不常使用的高级布局功能,初始化其实现和存储。 对于组件的某些不常使用的高级布局功能,初始化其实现和存储。在尝试使用 AdvancedLayoutFeatures 对象实现的任何功能之前调用此函数。 initializationComplete 完成对此组件的初始化。 完成对此组件的初始化。

此方法是您首次使用 addChild()addChildAt() 向父项添加组件时所需执行的最后一段代码。它可处理一些与分派 initialize 事件相关的辅助工作。如果您正在编写组件,则无需覆盖此方法。

initializeAccessibility 初始化此组件的辅助功能代码。 初始化此组件的辅助功能代码。

此方法由 initialize() 方法调用,用于与组件的辅助功能代码挂钩,这些代码位于 mx.accessibility 包中的单独类中。因为挂钩过程在每个子类中使用不同的静态变量,所以支持辅助功能的每个子类都必须覆盖此方法。

initializeRepeaterArrays 初始化用于跟踪此组件的重复实例的各个属性。parentmx.core:IRepeaterClient包含用于创建此组件的 Repeater 的父对象。 初始化用于跟踪此组件的重复实例的各个属性。

MXML<mx:Repeater/> 标记可能会导致创建组件的重复实例(Repeater 数据提供程序中的每个项目一个实例)。UIComponent 的 instanceIndicesrepeatersrepeaterIndices 属性跟踪各实例来自哪个数据项目和哪个 Repeater。

此方法是内部方法,由 Flex 框架自动调用。您不必调用或覆盖它。

initialize 初始化此组件的内部结构。 初始化此组件的内部结构。

初始化 UIComponent 是创建可视组件实例这一过程中的第四个步骤,首次将实例添加到父项时会自动执行此步骤。因此,您一般无需调用 initialize();Flex 框架会从 UIComponent 的 addChild()addChildAt() 方法的覆盖中为您调用它。

创建可视化组件实例过程中的第一个步骤是使用 new 运算符进行构建:

      var okButton:Button = new Button();

构建完成后,新的 Button 实例是一个孤立 DisplayObject;该实例尚不包含用于显示其标签的作为子项的 UITextField,也没有父项。

第二个步骤是为新构建的实例配置适当的属性、样式和事件处理程序:

      okButton.label = "OK";
      okButton.setStyle("cornerRadius", 0);
      okButton.addEventListener(MouseEvent.CLICK, clickHandler);

第三个步骤是将该实例添加到父项:

      someContainer.addChild(okButton);

首次将组件添加到父项时,调用 addChild()addChildAt() 会导致自动调用 initialize

此方法首先分派 preinitialize 事件,这使利用此组件的开发人员可在创建该组件的内部结构之前改造它。接着,它会调用 createChildren() 方法来创建组件的内部结构;对于 Button,此方法将为标签创建并添加 UITextField。然后,它会分派 initialize 事件,这使开发人员可在创建组件的内部结构之后改造它。

请注意,是首次向父项附加组件的操作触发了对组件内部结构的创建。如果组件的内部结构中包含其他 UIComponent,这就是一个递归过程。在此过程中,DisplayObjects 树以每次一个叶节点的速度增长。

如果您正在编写组件,则无需覆盖此方法。

invalidateDisplayList 标记组件,以便在稍后屏幕更新期间调用该组件的 updateDisplayList() 方法。 标记组件,以便在稍后屏幕更新期间调用该组件的 updateDisplayList() 方法。

Invalidation 是一个很有用的机制,可将组件更改延迟到稍后屏幕更新时进行处理,从而消除了重复的工作。例如,要更改宽度和高度,如果在更改宽度后立即更新组件,然后在设置新高度后再次更新组件,就有些浪费。更改两个属性后再使用新的大小一次性呈示组件,效率会更高。

很少调用 Invalidation 方法。通常,在组件上设置属性会自动调用合适的 invalidation 方法。

invalidateLayering 由某个组件的项目进行调用,以指示其 depth 属性已更改。 由某个组件的项目进行调用,以指示其 depth 属性已更改。请注意,在 UIComponent 上定义此函数时,实现对复杂分层的支持取决于子类。默认情况下,只有 GroupDataGroup 支持其子项的任意分层。 深度invalidateLayoutDirection 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。如果它们不同,该方法负责镜像元素的内容以及更新元素的布局后转换,以便子代继承镜像的坐标系。IVisualElement 通常通过以下方法实现镜像:使用 postLayoutTransformOffsets 按 -1 缩放 X 轴以及按元素宽度平移原点的 x 坐标。此“镜像”转换的净效果是反转 X 轴增加的方向,而不更改元素相对于其父代的原点的位置。 invalidateParentSizeAndDisplayList 此对象影响其布局时(includeInLayout 为 true),使父代大小和显示列表失效的 Helper 方法。 此对象影响其布局时(includeInLayout 为 true),使父代大小和显示列表失效的 Helper 方法。 invalidateProperties 标记组件,以便在稍后屏幕更新期间调用该组件的 commitProperties() 方法。 标记组件,以便在稍后屏幕更新期间调用该组件的 commitProperties() 方法。

Invalidation 是一个很有用的机制,可将组件更改延迟到稍后屏幕更新时进行处理,从而消除了重复的工作。例如,要更改文本颜色和大小,如果在更改颜色后立即进行更新,然后在设置大小后再更新大小,就有些浪费。同时更改两个属性后再使用新的大小和颜色一次性呈示文本,效率会更高。

很少调用 Invalidation 方法。通常,在组件上设置属性会自动调用合适的 invalidation 方法。

invalidateSize 标记组件,以便在稍后屏幕更新期间调用该组件的 measure() 方法。 标记组件,以便在稍后屏幕更新期间调用该组件的 measure() 方法。

Invalidation 是一个很有用的机制,可将组件更改延迟到稍后屏幕更新时进行处理,从而消除了重复的工作。例如,要更改文本和字体大小,如果在更改文本后立即进行更新,然后在设置大小后再更新大小,就有些浪费。更改两个属性后再使用新的大小一次性呈示文本,效率会更高。

很少调用 Invalidation 方法。通常,在组件上设置属性会自动调用合适的 invalidation 方法。

isOurFocus 通常由包含 UITextField 对象的组件覆盖,其中 UITextField 对象获取焦点。如果 UITextField 对象具有焦点,则返回 truetarget包含可以获得焦点的 UITextField 对象的 UIComponent 对象。 通常由包含 UITextField 对象的组件覆盖,其中 UITextField 对象获取焦点。 keyDownHandler 为 keyDown 事件调用的事件处理函数。event事件对象。 keyDown 事件调用的事件处理函数。如果覆盖此方法,请确保调用基类版本。 keyUpHandler 为 keyUp 事件调用的事件处理函数。event事件对象。 keyUp 事件调用的事件处理函数。如果覆盖此方法,请确保调用基类版本。 localToContent 将 Point 对象由本地坐标转换为内容坐标。Point,具有随内容坐标系而变化的坐标的 Point 对象。 point一个 Point 对象,用于指定本地坐标系中的 xy 坐标作为属性。 Point 对象由本地坐标转换为内容坐标。本地坐标指定的像素位置随组件的左上角而变化。内容坐标指定的像素位置随组件内容的左上角而变化,并包括组件的所有内容区域,甚至包括当前剪切掉但必须能够通过滚动组件访问的任何区域。您可以使用内容坐标系设置和获取使用绝对定位的容器中子项的位置。 contentToLocal()matchesCSSState 如果 cssState 与 currentCSSState 匹配,则返回 true。如果 cssStatecurrentCSSState 匹配,则返回 true。默认情况下,currentCSSStatecurrentState 相同。如果不存在任何状态,则返回 null。 cssStateCSSCondition.value 的可能值。该值表示此组件用于与 CSS 伪选择器匹配的当前状态。 如果 cssStatecurrentCSSState 匹配,则返回 true。通常,您无需直接调用此方法。而是由 mx.styles.CSSCondition.matchesStyleClient() 方法进行调用。

请注意,Spark 组件将其外观状态用作伪状态。Halo 组件使用 currentState 属性。

matchesCSSType 确定此实例与给定类型相同,还是属于给定类型的子类。如果 cssType 位于限定的类型选择器的层次结构中,则为 truecssType一个 CSSSelector 对象。 确定此实例与给定类型相同,还是属于给定类型的子类。通常,您无需直接调用此方法。而是由 mx.styles.CSSCondition.matchesStyleClient() 方法进行调用。 measureHTMLText 测量指定的 HTML 文本(该文本中可能包含 &lt;font&gt; 和 &lt;b&gt; 等 HTML 标签),假定该文本显示在单行 UITextField(使用由此 UIComponent 的样式确定的 UITextFormat)中。包含文本度量值的 TextLineMetrics 对象。 htmlText指定要测量的 HTML 文本的 String。 测量指定的 HTML 文本(该文本中可能包含 <font><b> 等 HTML 标记),假定该文本显示在单行 UITextField(使用由此 UIComponent 的样式确定的 UITextFormat)中。 measureText 测量指定的文本,假定该文本使用由此 UIComponent 的样式确定的 UITextFormat 显示在单行 UITextField(或 UIFTETextField)中。包含文本度量值的 TextLineMetrics 对象。 text指定要测量的文本的 String。 测量指定的文本,假定该文本使用由此 UIComponent 的样式确定的 UITextFormat 显示在单行 UITextField(或 UIFTETextField)中。该方法对于 Spark 组件无效,因为这些组件不使用 UITextField(或 UIFTETextField)。要测量 Spark 组件中的文本,请获取 spark.components.Label 或 spark.components.RichText 的度量。 measure 计算组件的默认大小和(可选)默认最小大小。 计算组件的默认大小和(可选)默认最小大小。此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。

您无需直接调用此方法。使用 addChild() 方法将组件添加到某个容器时,以及调用组件的 invalidateSize() 方法时,Flex 将调用 measure() 方法。

当设置组件的特定高度和宽度时,Flex 不会调用 measure() 方法,即使您显式调用 invalidateSize() 方法也不例外。也就是说,仅当组件的 explicitWidth 属性或 explicitHeight 属性设置为 NaN 时,Flex 才调用 measure() 方法。

覆盖此方法时,必须设置 measuredWidthmeasuredHeight 属性以定义默认大小。您可以选择设置 measuredMinWidthmeasuredMinHeight 属性来定义默认的最小大小。

大多数组件都会根据其显示内容以及影响内容显示的属性来计算这些值。一少部分组件只有硬编码的默认值。

measure() 的概念点供组件提供其原始或固有大小作为默认值。因此,measuredWidthmeasuredHeight 属性应由以下几个因素确定:

  • 组件需要显示的文本量。
  • 文本的样式,如 fontSize
  • 组件所显示的 JPEG 图像的大小。
  • 组件子项的测量大小或显式大小。
  • 任何边框、边距和间隙。

某些情况下,确定默认值的方式并不固定。例如,对于一个简单的 GreenCircle 组件,可能只需在其 measure() 方法中设置 measuredWidth = 100 和 measuredHeight = 100 便可提供合理的默认大小。而在其他情况下(例如 TextArea),相应计算(例如查找合适的宽度和高度,使其刚好适合显示所有文本并拥有黄金矩形的高宽比)所耗费的时间可能会过长。

measure() 的默认实现将 measuredWidthmeasuredHeightmeasuredMinWidthmeasuredMinHeight 设置为 0

move 将组件移动到其父项内的指定位置。x组件在其父项内的左侧位置。 y组件在其父项内的顶部位置。 将组件移动到其父项内的指定位置。调用此方法的效果与设置组件的 xy 属性完全相同。

如果您正在覆盖自定义组件中的 updateDisplayList() 方法,则应调用 move() 方法,而不是设置 xy 属性。二者的区别在于:调用 move() 方法可更改组件的位置,并在调用此方法时分派 move 事件;而设置 xy 属性也会更改组件的位置,但要在下次刷新屏幕时才分派此事件。

notifyStyleChangeInChildren 将样式更改传播到子项。stylePropString,指定样式属性的名称。 recursive递归通知该组件的所有子项。 将样式更改传播到子项。您通常无需调用此方法。 owns 如果 owner 属性链从 child 指向此 UIComponent,则返回 true。如果子项以此 UIComponent 为父项或归其所有,则为 truechild一个 UIComponent。 如果 owner 属性链从 child 指向此 UIComponent,则返回 trueparentChanged 当在父项中添加或删除 UIComponent 对象时由 Flex 调用。p此 UIComponent 对象的父项。 当在父项中添加或删除 UIComponent 对象时由 Flex 调用。开发人员通常无需调用此方法。 prepareToPrint 准备 IFlexDisplayObject 用于打印。包含当前组件的属性的对象,finishPrint() 方法需要使用这些属性将此组件还原为其先前的状态。 targetmx.core:IFlexDisplayObject要打印的组件。该组件可能是当前组件,也可能是其中的一个子项。 准备 IFlexDisplayObject 用于打印。对于 UIComponent 类,此方法不执行任何操作。Flex 容器将覆盖此方法,为打印做准备;例如,从打印的输出内容中删除滚动条。

此方法通常不适用于应用程序开发人员。

mx.printing.FlexPrintJob
regenerateStyleCache 为此组件及其所有后代生成或重新生成 CSS 样式缓存,前提条件是递归参数为 true。recursive以递归方式为此组件的所有子组件重新生成样式缓存。 为此组件构建或重新构建 CSS 样式缓存;如果 recursive 参数为 true,还会为此组件的所有后代执行同样的操作。

在下列情形中,Flex 框架将调用此方法:

  • 使用 addChild()addChildAt() 方法将 UIComponent 添加到父项时。
  • 更改 UIComponent 的 styleName 属性时。
  • 使用 CSSStyleDeclaration 的 setStyle() 方法设置 CSS 选择器中的样式时。

由于构建样式缓存涉及到复杂的计算,因此除非必要,应避免更改 styleName 或设置选择器样式。

通过调用 UIComponent 的 setStyle() 方法来设置实例样式时,不会调用此方法。与设置选择器样式相比,设置实例样式的速度较快。

您无需调用或覆盖此方法。

registerEffects 针对每个效果事件,将 EffectManager 注册为一个事件侦听器。effects效果事件的名称。 针对每个效果事件,将 EffectManager 注册为一个事件侦听器。您通常无需调用此方法。 removeStyleClient 从该组件实例删除非可视样式客户端。作为 styleClient 参数传入的非可视样式客户端。 styleClientmx.styles:IAdvancedStyleClient将从该组件的非可视样式客户端列表删除的 IAdvancedStyleClient 从该组件实例删除非可视样式客户端。调用此方法后,非可视样式客户端将不再继承该组件实例的样式更改。作为副作用,该方法将 styleClient 参数的 styleParent 属性设置为 null。如果 styleClient 未添加到该组件实例,将不会执行操作。 addStyleClientmx.styles.IAdvancedStyleClientreplayAutomatableEvent 重放指定的事件。如果重放成功,则为 trueevent要重放的事件。 重放指定的事件。如果已在 superclass 中定义默认重放行为,组件作者可能应调用 super.replayAutomatableEvent。 resolveAutomationIDPart 使用提供的 ID 解析子项。符合条件的子项的数组;如果可以解析所有子项,则为 nullcriteria描述子项的几组属性。条件可以包含能导致多个子项匹配的常规表达式值。 使用提供的 ID 解析子项。ID 是 createAutomationIDPart() 方法提供的一组属性。 resourcesChanged 构建 UIComponent 时将调用此方法,并且每当 ResourceManager 分派“change”事件用于指示本地化资源已经过某种更改时,都会再次调用此方法。 构建 UIComponent 时将调用此方法,并且每当 ResourceManager 分派 "change" 事件用于指示本地化资源已经过某种更改时,都会再次调用此方法。

在下列情形中分派此事件:设置 ResourceManager 的 localeChain 属性时,资源模块完成加载时,以及调用 ResourceManager 的 update() 方法时。

子类应覆盖此方法,并在调用 super.resourcesChanged() 后,执行任何适当的操作以响应新资源值。

resumeBackgroundProcessing 在调用 suspendBackgroundProcessing() 之后继续对使用 callLater() 排队的方法进行背景处理。 在调用 suspendBackgroundProcessing() 之后继续对使用 callLater() 排队的方法进行背景处理。

有关详细信息,请参阅对 suspendBackgroundProcessing() 的描述。

setActualSize 调整对象大小。w对象的宽度。 h对象的高度。 调整对象大小。调用 setActualSize() 方法并不设置 explictWidthexplicitHeight 属性,因此,将来进行布局计算时可能会导致对象还原为先前的大小。这一点与直接设置 widthheight 属性不同。此方法主要适用于实现 updateDisplayList() 方法的组件开发人员、Effects 以及 LayoutManager。 setConstraintValue 设置一个布局约束值的方式,与设置此组件的约束样式的方式相同。constraintName约束样式的名称,可以是以下任意一个:left、right、top、bottom、verticalCenter、horizontalCenter、baseline value可以使用以下两种格式之一指定约束值。可以将其指定为数值字符串,如 "10",还可以将其指定为 "标识符:数值" 形式的字符串。对于 "标识符:数值" 字符串,标识符为 ConstraintRow 或 ConstraintColumn 的 id。例如,"cc1:10" 的值指定具有 id "cc1" 的 ConstraintColumn 的值为 10。 设置一个布局约束值的方式,与设置此组件的约束样式的方式相同。 setCurrentState 设置当前状态。stateName新视图状态的名称。 playTransitiontrue如果为 true,则在视图状态更改时播放相应的转换。 设置当前状态。 currentStatesetFocus 设置此组件的焦点。 设置此组件的焦点。组件可能依次将焦点传递给子组件。

注意:使用此方法设置焦点时,只有 TextInput 和 TextArea 控件加亮显示。当用户按 Tab 键切换控件时,所有控件都加亮显示。

setLayoutBoundsPosition 设置元素在屏幕上进行绘制时所用的坐标。x边框左上角的 X 坐标。 y边框左上角的 Y 坐标。 postLayoutTransformtruepostLayoutTransformtrue 时,元素的定位方式为:其边框的左上角为 (x, y)。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 设置元素在屏幕上进行绘制时所用的坐标。

请注意,调用 setLayoutBoundSize() 方法会影响布局位置,因此请在调用 setLayoutBoundSize() 之后再调用 setLayoutBoundPosition()

setLayoutBoundsSize 设置元素的布局大小。width元素的布局宽度。 height元素的布局高度。 postLayoutTransformtrue如果 postLayoutTransform 为 true,则指定的大小就是元素的边框的大小。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 设置元素的布局大小。这是元素在屏幕上进行绘制时所用的大小。

如果 width 和/或 height 参数尚未指定 (NaN),则 Flex 会将该元素的布局大小设置为首选宽度和/或首选高度。

请注意,调用 setLayoutBoundSize() 方法会影响布局位置,因此请在调用 setLayoutBoundSize() 之后再调用 setLayoutBoundPosition()

setLayoutMatrix3D 设置用于计算组件相对于其同级组件的布局大小和位置的转换 Matrix3D。value矩阵。 invalidateLayout设置为 true,将使父容器重新布局其子代。通常情况下,会将 true 传递给 invalidateLayout() 方法。 设置用于计算组件相对于其同级组件的布局大小和位置的转换 Matrix3D。

此矩阵通常由组件的转换属性定义,例如,xyzrotationXrotationYrotationZscaleXscaleYscaleZtransformXtransformY。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets 属性。

请注意,在父坐标中计算时,布局 Matrix3D 是在 getPreferredSize()getMinSize()getMaxSize()getLayoutSize() 中进行分解的;在父坐标和子坐标中计算时,布局 Matrix3D 是在 getLayoutPosition() 中进行分解的。计算转换矩阵的布局通常会显式调用此方法,并使用子坐标中的大小。调用此方法的布局会将 false 传递给 invalidateLayout() 方法,这样不会触发后续的布局传递。

setLayoutMatrix 设置用于相对于其同级组件计算组件的布局大小和位置的转换 Matrix。value矩阵。 invalidateLayout设置为 true,将使父容器重新布局其子代。通常情况下,会将 true 传递给 invalidateLayout() 方法。 设置用于相对于其同级组件计算组件的布局大小和位置的转换 Matrix。

此矩阵通常由组件的 2D 属性(如 xyrotationscaleXscaleYtransformXtransformY)定义。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets

请注意,在父坐标中计算时,布局 Matrix 是在 getPreferredSize()getMinSize()getMaxSize()getLayoutSize() 方法中进行分解的;在父坐标和子坐标中计算时,布局 Matrix 是在 getLayoutPosition() 中进行分解的。计算转换矩阵的布局通常会显式调用此方法,并使用子坐标中的大小。调用此方法的布局会将 false 传递给 invalidateLayout() 方法,这样不会触发后续的布局传递。

setStretchXY 在水平方向和垂直方向上,指定转换拉伸因子。stretchX拉伸因子的水平组件。 stretchY拉伸因子的垂直组件。 在水平方向和垂直方向上,指定转换拉伸因子。在进行任何其他转换之前,将拉伸因子应用到计算的矩阵。 setStyle 对此组件实例设置样式属性。styleProp样式属性的名称。 newValue样式的新值。 对此组件实例设置样式属性。

此方法可能会覆盖以全局方式设置的样式。

调用 setStyle() 方法会降低性能。仅在必要时才使用它。

setVisible 当 visible 属性发生更改时调用。valuevisible 属性的新值。指定 true 可显示组件,指定 false 可隐藏组件。 noEventfalse如果为 true,则不分派事件。如果为 false,则当组件变为可见时分派 show 事件,当组件变为不可见时分派 hide 事件。 visible 属性发生更改时调用。请设置 visible 属性来显示或隐藏组件,而不是直接调用此方法。 stateChanged 当状态改变以检查状态特定的样式是否应用到此组件时,会调用此方法。oldState旧状态的名称。 newState新状态的名称。 recursive设置为 true,以执行递归检查。 当状态改变以检查状态特定的样式是否应用到此组件时,会调用此方法。如果有机会为当前状态匹配 CSS 伪选择器,则需要为此实例重新生成样式缓存,并且,如果将 recursive 参数设置为 true,则可能需要为所有子项重新生成样式缓存。 styleChanged 检测对样式属性的更改。styleProp样式属性的名称;如果此组件的所有样式均已更改,则为 null。 检测对样式属性的更改。设置任何样式属性后,Flex 将调用 styleChanged() 方法,向其传递所设置样式的名称。

此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。创建自定义组件时,可以覆盖 styleChanged() 方法,以检查传递给它的样式名称,并对更改进行相应处理。这允许您覆盖现有样式的默认行为或添加自己的自定义样式属性。

如果您处理样式属性,覆盖 styleChanged() 方法时应调用 invalidateDisplayList() 方法,以使 Flex 在下次更新屏幕时执行组件的 updateDisplayList() 方法。

stylesInitialized 首次初始化组件样式时,Flex 会调用 stylesInitialized() 方法。 首次初始化组件样式时,Flex 会调用 stylesInitialized() 方法。

此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。Flex 可以保证在首次调用组件的 measureupdateDisplayList 方法之前充分初始化组件的样式。对于大多数组件而言,这就足够了。但是,如果您需要早些访问样式值,则可以覆盖 stylesInitialized() 函数,以在首次初始化样式属性后立即访问这些属性。

suspendBackgroundProcessing 阻止对使用 callLater() 排队的方法进行背景处理,直到调用 resumeBackgroundProcessing() 为止。 阻止对使用 callLater() 排队的方法进行背景处理,直到调用 resumeBackgroundProcessing() 为止。

如果您使用需要无中断地执行的严格时间要求代码,这些方法可能非常有用。例如,如果将 Effect 的 suspendBackgroundProcessing 属性设置为 true,则会在开始播放效果时自动调用 suspendBackgroundProcessing(),并在停止播放时调用 resumeBackgroundProcessing 以确保动画流畅。

LayoutManager 使用 callLater(),这意味着在调用 suspendBackgroundProcessing()resumeBackgroundProcessing() 期间不会调用 commitProperties()measure()updateDisplayList()

无论对外部方法还是内部方法(即外部方法调用的方法)而言,调用 suspendBackgroundProcessing()resumeBackgroundProcessing() 都很安全,因为这些方法实际上会增加或减少用于确定是否处理背景的计数。

transformAround transformCenter在组件自己的坐标中用于相对于其父项保持固定的点。 scalenull转换的缩放的新值。 rotationnull转换的旋转的新值 translationnull转换的平移的新值。 postLayoutScalenull转换的布局后缩放的新值。 postLayoutRotationnull转换的布局后旋转的新值。 postLayoutTranslationnull转换的布局后平移的新值。 invalidateLayouttrue如果为 true,则父容器的大小和显示将无效。调用此方法的布局会传递 false,这样不会触发后续的布局传递。 transformPointToParent 一种实用程序方法,用于将以该对象的本地坐标指定的点转换为在该对象父坐标中的相应位置。localPosition将要转换的点,指定为对象的本地坐标。 position保存布局前结果的 Vector3D 点。如果为 null,则忽略该参数。 postLayoutPosition保存布局后结果的 Vector3D 点。如果为 null,则忽略该参数。 一种实用程序方法,用于将以该对象的本地坐标指定的点转换为在该对象父坐标中的相应位置。如果 positionpostLayoutPosition 参数为非 null,将对这两个参数设置布局前和布局后结果。 updateDisplayList 绘制对象和/或设置其子项的大小和位置。unscaledWidth指定组件在组件坐标中的宽度(以像素为单位),而不考虑该组件的 scaleX 属性值。 unscaledHeight指定组件在组件坐标中的高度(以像素为单位),而不考虑该组件的 scaleY 属性值。 绘制对象和/或设置其子项的大小和位置。此方法是一种高级方法,可在创建 UIComponent 的子类时覆盖。

您无需直接调用此方法。使用 addChild() 方法将组件添加到容器时,以及调用组件的 invalidateDisplayList() 方法时,Flex 将调用 updateDisplayList() 方法。

如果组件没有子项,您就可以借助此方法使用针对组件的 Graphics 对象(如 graphics.drawRect())上的一些方法以编程方式进行绘制。

如果组件有子项,您就可以借助此方法调用其子项上的 move()setActualSize() 方法。

组件可以通过编程方式进行绘制,即使组件有子项时也不例外。在上述任一操作中,您都应使用组件的 unscaledWidthunscaledHeight 作为其边界。

请注意,您应使用 unscaledWidthunscaledHeight 属性而不是 widthheight 属性,这很重要。

validateDisplayList 验证子项的位置和大小,并绘制其他可视内容。 验证子项的位置和大小,并绘制其他可视内容。如果使用此 ILayoutManagerClient 调用 LayoutManager.invalidateDisplayList() 方法,则当更新显示列表时会调用 validateDisplayList() 方法。 validateNow 验证并更新此对象的属性和布局,如果需要的话重绘对象。 验证并更新此对象的属性和布局,如果需要的话重绘对象。通常只有当脚本执行完毕后,才会处理要求进行大量计算的处理属性。例如,对 width 属性的设置可能会延迟,因为此设置需要重新计算这些对象的子项或父项的宽度。如果脚本多次设置了 width 属性,则延迟处理可防止进行多次处理。此方法允许您手动覆盖此行为。 validateProperties 由布局逻辑用于通过调用 commitProperties() 方法来验证组件的属性。 由布局逻辑用于通过调用 commitProperties() 方法来验证组件的属性。通常,子类化程序应覆盖 commitProperties() 方法,而不是覆盖此方法。 validateSize 如果使用此 ILayoutManagerClient 调用 LayoutManager.invalidateSize() 方法,随后在测量时调用了 validateSize() 方法,则验证组件的度量大小。recursivefalse如果为 true,则调用对象子项的此方法。 如果使用此 ILayoutManagerClient 调用 LayoutManager.invalidateSize() 方法,随后在测量时调用了 validateSize() 方法,则验证组件的度量大小。 validationResultHandler 处理分配给此组件的验证程序分派的 valid 和 invalid 事件。eventmx.events:ValidationResultEvent用于验证的事件对象。 处理分配给此组件的验证程序分派的 validinvalid 事件。

您通常通过向验证程序分配事件侦听器来处理由验证程序分派的 validinvalid 事件。如果您希望直接在正在验证的组件中处理验证事件,则可以覆盖此方法以处理 validinvalid 事件。通常,您会在覆盖过程中调用 super.validationResultHandler(event)

mx.events.ValidationResultEvent
verticalGradientMatrix 返回一个框 Matrix,在绘制垂直渐变时可以将其作为 rot 参数传递给 drawRoundRect()。垂直渐变的 Matrix。 x渐变的左坐标(以像素为单位)。 y渐变的顶坐标(以像素为单位)。 width渐变的宽度(以像素为单位)。 height渐变的高度(以像素为单位)。 返回一个框 Matrix,在绘制垂直渐变时可以将其作为 rot 参数传递给 drawRoundRect()

由于性能原因,该 Matrix 存储在一个静态变量中,通过调用 horizontalGradientMatrix()verticalGradientMatrix() 可以重复使用此变量。因此,您应该在再次调用 horizontalGradientMatrix()verticalGradientMatrix() 之前将生成的 Matrix 传递给 drawRoundRect()

DEFAULT_MAX_HEIGHT maxHeight 属性的默认值。1000010000 maxHeight 属性的默认值。 DEFAULT_MAX_WIDTH maxWidth 属性的默认值。1000010000 maxWidth 属性的默认值。 DEFAULT_MEASURED_HEIGHT measuredHeight 属性的默认值。2222 measuredHeight 属性的默认值。大多数组件都计算 measuredHeight,但有些组件是基于流的,所以必须选择看似合理的数字。 DEFAULT_MEASURED_MIN_HEIGHT measuredMinHeight 属性的默认值。2222 measuredMinHeight 属性的默认值。大多数组件都计算 measuredMinHeight,但有些组件是基于流的,所以必须选择看似合理的数字。 DEFAULT_MEASURED_MIN_WIDTH measuredMinWidth 属性的默认值。4040 measuredMinWidth 属性的默认值。大多数组件都计算 measuredMinWidth,但有些组件是基于流的,所以必须选择看似合理的数字。 DEFAULT_MEASURED_WIDTH measuredWidth 属性的默认值。160160 measuredWidth 属性的默认值。大多数组件都计算 measuredWidth,但有些组件是基于流的,所以必须选择看似合理的数字。 accessibilityDescription 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 description 属性。 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 description 属性。

getter 仅返回 accessibilityProperties.description。如果 accessibilityProperties 为 null,则返回“”。setter 先检查 accessibilityProperties 是否为 null,如果是,则将其设置为新的 AccessibilityProperties 实例。随后会设置 accessibilityProperties.description

accessibilityEnabled 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 silent 属性。 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 silent 属性。

请注意,accessibilityEnabled 与 silent 相反;silentfalse 时,accessibilityEnabledtrue

getter 仅返回 accessibilityProperties.silent。如果 accessibilityProperties 为 null,则返回 true。setter 先检查 accessibilityProperties 是否为 null,如果是,则将其设置为新的 AccessibilityProperties 实例。随后会设置 accessibilityProperties.silent

accessibilityName 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 name 属性。 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 name 属性。

getter 仅返回 accessibilityProperties.name。如果 accessibilityProperties 为 null,则返回“”。setter 先检查 accessibilityProperties 是否为 null,如果是,则将其设置为新的 AccessibilityProperties 实例。随后会设置 accessibilityProperties.name

accessibilityShortcut 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 shortcut 属性。 一个方便的存取器,用于访问此 UIComponent 的 accessibilityProperties 对象的 shortcut 属性。

getter 仅返回 accessibilityProperties.shortcut。如果 accessibilityProperties 为 null,则返回“”。setter 先检查 accessibilityProperties 是否为 null,如果是,则将其设置为新的 AccessibilityProperties 实例。随后会设置 accessibilityProperties.shortcut

activeEffects 组件上当前播放的效果列表,如 EffectInstance 实例的 Array。 组件上当前播放的效果列表,如 EffectInstance 实例的 Array。 automationDelegate 处理自动化相关功能的委托对象。 处理自动化相关功能的委托对象。 automationEnabled 如果此组件启用了自动化,则为 true;否则为 false。 如果此组件启用了自动化,则为 true;否则为 false。 automationName 可用作此对象的标识符的名称。 可用作此对象的标识符的名称。 automationOwner 用于自动化目的的此组件的所有者。 用于自动化目的的此组件的所有者。 automationParent 用于自动化目的的此组件的父级。 用于自动化目的的此组件的父级。 automationTabularData IAutomationTabularData 接口的实现,可用于检索数据。 IAutomationTabularData 接口的实现,可用于检索数据。 automationValue automationVisible 如果此组件对于自动化是可见的,则为 true;否则为 false。 如果此组件对于自动化是可见的,则为 true;否则为 false。 baselinePosition 组件第一行文本的基线的 y 坐标。 组件第一行文本的基线的 y 坐标。

此属性用于实现 baseline 约束样式,还可用于将 FormItem 的标签与 FormItem 中的控件对齐。

baseline 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将属性设置为其默认值 undefined,请使用 MXML 中的 @Clear () 指令或 ActionScript 代码中的 undefined 值。例如,在 MXML 代码中,baseline.s2="@Clear()" 将取消对状态 s2 中 baseline 约束的设置。或者在 ActionScript 代码中,button.baseline = undefined 将取消对 buttonbaseline 约束的设置。

从锚点目标到控件的基线位置的垂直距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域的上边缘。在具有高级约束的布局中,目标可以是一个约束行。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“row1:10”。

bottom 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将属性设置为其默认值 undefined,请使用 MXML 中的 @Clear () 指令或 ActionScript 代码中的 undefined 值。例如,在 MXML 代码中,bottom.s2="@Clear()" 将取消对状态 s2 中 botton 约束的设置。或者在 ActionScript 代码中,button.bottom = undefined 将取消对 buttonbottom 约束的设置。

从组件的下边缘到锚点目标的下边缘的垂直距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束行。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“row1:10”。

cachePolicy 指定此对象的位图缓存策略。UIComponentCachePolicy.AUTO 指定此对象的位图缓存策略。在 MXML 中,可能值为 "on""off""auto"(默认值)。

在 ActionScript 中,可能值为 UIComponentCachePolicy.ONUIComponentCachePolicy.OFFUIComponentCachePolicy.AUTO(默认值)。

  • 如果值为 UIComponentCachePolicy.ON,则表示对象始终作为位图缓存。
  • 如果值为 UIComponentCachePolicy.OFF,则表示对象从不作为位图缓存。
  • 如果值为 UIComponentCachePolicy.AUTO,则表示框架将使用试探法确定此对象是否应作为位图缓存。

className 此实例的类的名称,如“Button”。 此实例的类的名称,如 "Button"

此字符串不包括包名称。如果您还需要包名称,请调用 flash.utils 包中的 getQualifiedClassName() 方法。此方法将返回一个字符串,如 "mx.controls::Button"

contentMouseX 返回鼠标在内容坐标系中的 x 位置。 返回鼠标在内容坐标系中的 x 位置。内容坐标指定的像素位置随组件内容的左上角而变化,并包括组件的所有内容区域,甚至包括当前剪切掉但必须能够通过滚动组件访问的任何区域。 contentMouseY 返回内容坐标系中鼠标的 y 位置。 返回内容坐标系中鼠标的 y 位置。内容坐标指定的像素位置随组件内容的左上角而变化,并包括组件的所有内容区域,甚至包括当前剪切掉但必须能够通过滚动组件访问的任何区域。 currentCSSState 匹配 CSS 伪选择器时要使用的状态。 匹配 CSS 伪选择器时要使用的状态。默认情况下,此状态为 currentStatecurrentState 组件的当前视图状态。 组件的当前视图状态。将其设置为 ""null 可将组件重置回其基本状态。

当您使用此属性设置组件的状态时,Flex 将应用您定义的转移。您还可以使用 setCurrentState() 方法设置当前状态,此方法可以有选择性地更改状态,而无需应用转移。

setCurrentState()
cursorManager 获取控制此组件及其同级组件的光标的 CursorManager。 获取控制此组件及其同级组件的光标的 CursorManager。每个顶级窗口都包含自己的 CursorManager 实例;为确保使用的实例正确,请使用此方法。 depth 确定容器内各项目的呈示顺序。 确定容器内各项目的呈示顺序。Spark 容器根据项目的 depth 属性确定这些项目的顺序,具有最低深度的项目在后面,具有较高深度的项目在前面。具有相同深度值的项目按照添加到容器中的顺序显示。 descriptor 引用 UIComponentDescriptor(如果有),过去曾通过 createComponentFromDescriptor() 方法使用它来创建此 UIComponent 实例。mx.core:UIComponentDescriptor 引用 UIComponentDescriptor(如果有),过去曾通过 createComponentFromDescriptor() 方法使用它来创建此 UIComponent 实例。如果此 UIComponent 实例并非基于描述符创建,则此属性为 null。 mx.core.UIComponentDescriptordesignLayer mx.core:DesignLayer document 引用与此 UIComponent 相关联的文档对象。 引用与此 UIComponent 相关联的文档对象。文档对象是位于 Flex 应用程序、MXML 组件或 AS 组件层次结构顶层的 Object。 doubleClickEnabled 指定 UIComponent 对象是否接收 doubleClick 事件。false 指定 UIComponent 对象是否接收 doubleClick 事件。默认值为 false,即 UIComponent 对象不接收 doubleClick 事件。

还必须将 mouseEnabled 属性设置为 true(默认值),这样对象才能接收 doubleClick 事件。

enabled errorString 当验证程序监视组件并且验证失败时,组件的错误提示中将显示的文本。 当验证程序监视组件并且验证失败时,组件的错误提示中将显示的文本。

您可以使用 errorString 属性显示组件的验证错误,而无需实际使用 validator 类。当您将 String 值写入 errorString 属性时,Flex 将在组件周围绘制红色边框以指示验证错误,并且当您将鼠标指针移至组件上方时,该 String 将作为验证错误消息显示在工具提示中,就像验证程序检测到验证错误一样。

若要清除验证错误,请为 errorString 属性写入一个空 String ""。

请注意,为 errorString 属性写入值不会触发 valid 或 invalid 事件,只会更改边框颜色和显示验证错误消息。

explicitHeight 指定该组件在组件坐标中显式高度(以像素为单位)的数字。 指定该组件在组件坐标中显式高度(以像素为单位)的数字。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于该值是组件坐标值,因此针对其父项的真正 explicitHeightscaleY 属性影响。

设置 height 属性,同时也会将此属性设置为指定的高度值。

explicitMaxHeight 布局过程中父级要考虑的组件最大建议高度。NaN 布局过程中父级要考虑的组件最大建议高度。此值采用组件坐标(以像素为单位)。

应用程序开发人员一般不设置 explicitMaxHeight 属性。而是设置 maxHeight 属性的值,该值设置 explicitMaxHeight 属性。不会更改 maxHeight 的值。

在布局过程中,如果应用程序开发人员明确设置了 maxHeight,则使用 explicitMaxHeight 的值。否则,使用 maxHeight 的默认值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 maxHeightscaleY 属性影响。有些组件从理论上没有高度限制。在这些情况下,可将其 maxHeight 设置为 UIComponent.DEFAULT_MAX_HEIGHT

explicitMaxWidth 布局过程中父级要考虑的组件最大建议宽度。NaN 布局过程中父级要考虑的组件最大建议宽度。此值采用组件坐标(以像素为单位)。

应用程序开发人员一般不设置 explicitMaxWidth 属性。而是设置 maxWidth 属性的值,该值设置 explicitMaxWidth 属性。不会更改 maxWidth 的值。

在布局过程中,如果应用程序开发人员明确设置了 maxWidth,则使用 explicitMaxWidth 的值。否则,使用 maxWidth 的默认值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 maxWidthscaleX 属性影响。有些组件从理论上没有宽度限制。在这些情况下,可将其 maxWidth 设置为 UIComponent.DEFAULT_MAX_WIDTH

explicitMinHeight 布局过程中父级要考虑的组件最小建议高度。NaN 布局过程中父级要考虑的组件最小建议高度。此值采用组件坐标(以像素为单位)。

应用程序开发人员一般不设置 explicitMinHeight 属性。而是设置 minHeight 属性的值,该值设置 explicitMinHeight 属性。不会更改 minHeight 的值。

在布局过程中,如果应用程序开发人员明确设置了 minHeight,则使用 explicitMinHeight 的值。否则,使用 measuredMinHeight 的值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 minHeightscaleY 属性影响。

explicitMinWidth 布局过程中父级要考虑的组件最小建议宽度。NaN 布局过程中父级要考虑的组件最小建议宽度。此值采用组件坐标(以像素为单位)。

应用程序开发人员一般不设置 explicitMinWidth 属性。而是设置 minWidth 属性的值,该值设置 explicitMinWidth 属性。不会更改 minWidth 的值。

在布局过程中,如果应用程序开发人员明确设置了 minWidth,则使用 explicitMinWidth 的值。否则,使用 measuredMinWidth 的值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 minWidthscaleX 属性影响。

explicitWidth 指定该组件在组件坐标中显式宽度(以像素为单位)的数字。 指定该组件在组件坐标中显式宽度(以像素为单位)的数字。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于该值是组件坐标值,因此针对其父项的真正 explicitWidthscaleX 属性影响。

设置 width 属性,同时也会将此属性设置为指定的宽度值。

flexContextMenu 此 UIComponent 的上下文菜单。mx.controls:IFlexContextMenunull 此 UIComponent 的上下文菜单。 focusEnabled 指示切换到此组件时,是否可以获得焦点。 指示切换到此组件时,是否可以获得焦点。当 UIComponent 用作另一组件的子组件时,可以将 focusEnabled 设置为 false,以便外部组件成为可获得焦点的实体。如果此属性是 false,则焦点将转换到已将 focusEnable 设置为 true 的第一个父项。

默认值为 true,spark.components.Scroller 组件除外。对于该组件,默认值为 false

spark.components.Scroller
focusManager 获取控制此组件及其同级组件的焦点的 FocusManager。mx.managers:IFocusManager 获取控制此组件及其同级组件的焦点的 FocusManager。每个弹出框都有自己的焦点循环,因此也有自己的 FocusManager 实例。为确保使用的实例正确,请使用此方法。 focusPane 与此对象相关联的焦点窗格。 与此对象相关联的焦点窗格。如果对象的任一子项包含焦点,该对象将具有焦点窗格。 hasComplexLayoutMatrix 如果 UIComponent 具有任何非平移 (x,y) 转换属性,则返回 true。 如果 UIComponent 具有任何非平移 (x,y) 转换属性,则返回 truehasFocusableChildren 一个标志,指示子对象是否能够获得焦点。 一个标志,指示子对象是否能够获得焦点。

注意:此属性与 Flash Player 使用的 tabChildren 属性类似。应该将 hasFocusableChildren 属性用于 Flex 应用程序。请勿使用 tabChildren 属性。

此属性通常为 false,因为大多数组件既可以自己获得焦点,也可以委托单个内部子组件获得焦点(但显示为该组件获得了焦点)。例如,TextInput 控件包含一个可成为焦点的 RichEditableText 子控件,但实际上当 RichEditableText 子组件获得焦点时,却显示为 TextInput 获得了焦点。TextInput 将 hasFocusableChildren 设置为 false,因为获得焦点的组件为 TextInput。其内部结构是一个抽象概念。

通常只有像 TabNavigator 和 Accordion 这样的导航器组件将此标志设置为 true,因为它们在按 Tab 键时获得了焦点,但焦点会在进一步按 Tab 键时转移到子容器的组件中。

默认值为 false,spark.components.Scroller 组件除外。对于该组件,默认值为 true

spark.components.Scroller
hasLayoutMatrix3D 如果元素具有 3D 矩阵,则为 true。 如果元素具有 3D 矩阵,则为 true

使用 hasLayoutMatrix3D,而不是调用和检查 getLayoutMatrix3D() 的返回值,因为该方法会返回一个有效的矩阵,即使元素是 2D 的也是如此。

height 指定组件在父坐标中的高度的数字(以像素为单位)。 指定组件在父坐标中的高度的数字(以像素为单位)。默认值为 0,但当 Flex 在应用程序中设置完组件的大小后,此属性将包含实际的组件高度。

请注意:您可以在 MXMLheight 属性中指定一个百分比值(如 height="100%"),但无法在 ActionScript 的 height 属性中使用百分比值;可改用 percentHeight 属性。

设置此属性将导致 resize 事件被分派。有关何时分派此事件的详细信息,请参阅 resize 事件。

percentHeight
horizontalCenter 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将属性设置为其默认值 undefined,请使用 MXML 中的 @Clear () 指令或 ActionScript 代码中的 undefined 值。例如,在 MXML 代码中,horizontalCenter.s2="@Clear()" 将取消对状态 s2 中 horizontalCenter 约束的设置。或者在 ActionScript 代码中,button.horizontalCenter = undefined 将取消对 buttonhorizontalCenter 约束的设置。

从组件中心到锚点目标的内容区域中心的水平距离(以像素为单位)。

默认锚点目标是容器本身。

在具有高级约束的布局中,锚点目标可以是一个约束列。那么,内容区域就是前一列(或容器侧)与目标列之间的空间。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“constraintColumnId:value”将属性值设置为一个字符串,如“col1:10”。

id 组件 ID。 组件 ID。此值将作为对象的实例名称,因此不应包含任何空格或特殊字符。应用程序中的每个组件都应具有唯一的 ID。

如果将使用第三方工具对您的应用程序进行测试,请为每个组件赋予一个有意义的 ID。测试工具使用 ID 代表其脚本中的控件,因此使用有意义的名称可使脚本更具可读性。例如,将某个按钮的值设置为 submit_button 而不是 b1 或 button1。

includeInLayout 指定此组件是否包含在父容器的布局中。true 指定此组件是否包含在父容器的布局中。如果为 true,则该对象将包含在其父容器的布局中,并由其父容器根据其布局规则调整其大小并确定其位置。如果为 false,则对象的父容器的布局不影响该对象的大小和位置。 inheritingStyles 此组件的继承样式链的开头内容。 此组件的继承样式链的开头内容。getStyle() 方法只需访问 inheritingStyles[styleName],即可搜索整个与原型链接的链。此对象由 initProtoChain() 设置。开发人员通常不需要直接访问此属性。 initialized 一个标志,用于确定某个对象是否已通过布局的所有三个阶段:提交、测量和布局(假设每个阶段都是必需的)。 一个标志,用于确定某个对象是否已通过布局的所有三个阶段:提交、测量和布局(假设每个阶段都是必需的)。 instanceIndex 重复组件的索引。 重复组件的索引。如果组件不在 Repeater 中,则值为 -1。 instanceIndices 一个 Array,包含从此 UIComponent 对象的父文档引用该对象所需的索引。 一个 Array,包含从此 UIComponent 对象的父文档引用该对象所需的索引。除非 UIComponent 对象位于一个或多个 Repeater 中,否则该 Array 为空。第一个元素与最外面的 Repeater 对应。例如,如果 id 为“b”并且 instanceIndices 为 [2,4],则在父文档中将以 b[2][4] 的形式对其引用。 is3D 当元素为 3D 时,则为 true。 当元素为 3D 时,则为 true。元素也可以是 3D 的,因为它具有 3D 转换属性或 3D 布局后转换偏移,或二者都有。 isDocument 如果此 UIComponent 实例为文档对象,则为 true。 如果此 UIComponent 实例为文档对象,则为 true。这意味着该对象位于 Flex 应用程序、MXML 组件或 ActionScript 组件层次结构的顶层。 isPopUp PopUpManager 将其设置为 true 以指示已弹出该组件。 PopUpManager 将其设置为 true 以指示已弹出该组件。 left 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将 MXML 中属性的状态特定的值设置为其默认值 undefined,请使用 @Clear() 指令。例如,在 MXML 代码中,left.s2="@Clear()" 将取消对状态 s2 中 left 约束的设置。或者在 ActionScript 代码中,button.left = undefined 将取消对 buttonleft 约束的设置。

从组件的左边缘到锚点目标的左边缘的水平距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束列。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“col1:10”。

maxHeight 布局过程中父级要考虑的组件最大建议高度。10000 布局过程中父级要考虑的组件最大建议高度。此值采用组件坐标(以像素为单位)。此属性的默认值由组件开发人员设置。

组件开发人员使用此属性设置组件高度的上限。

如果应用程序开发人员覆盖 maxHeight 的默认值,则将在 explicitMaxHeight 中存储新值。不会更改 maxHeight 的默认值。因此,在布局过程中,如果应用程序开发人员明确设置了 maxHeight,则对组件最大建议高度使用 explicitMaxHeight 的值。如果用户未明确设置 maxHeight,则使用默认值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 maxHeightscaleY 属性影响。有些组件从理论上没有高度限制。在这些情况下,可将其 maxHeight 设置为 UIComponent.DEFAULT_MAX_HEIGHT

maxWidth 布局过程中父级要考虑的组件最大建议宽度。10000 布局过程中父级要考虑的组件最大建议宽度。此值采用组件坐标(以像素为单位)。此属性的默认值由组件开发人员设置。

组件开发人员使用此属性设置组件宽度的上限。

如果应用程序开发人员覆盖 maxWidth 的默认值,则将在 explicitMaxWidth 中存储新值。不会更改 maxWidth 的默认值。因此,在布局过程中,如果应用程序开发人员明确设置了 maxWidth,则对组件最大建议宽度使用 explicitMaxWidth 的值。如果用户未明确设置 maxWidth,则使用默认值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 maxWidthscaleX 属性影响。有些组件从理论上没有宽度限制。在这些情况下,可将其 maxWidth 设置为 UIComponent.DEFAULT_MAX_WIDTH

measuredHeight 组件的默认高度(以像素为单位)。 组件的默认高度(以像素为单位)。此值由 measure() 方法设置。 measuredMinHeight 组件的默认最小高度(以像素为单位)。 组件的默认最小高度(以像素为单位)。此值由 measure() 方法设置。 measuredMinWidth 组件的默认最小宽度(以像素为单位)。 组件的默认最小宽度(以像素为单位)。此值由 measure() 方法设置。 measuredWidth 组件的默认宽度(以像素为单位)。 组件的默认宽度(以像素为单位)。此值由 measure() 方法设置。 minHeight 布局过程中父级要考虑的组件最小建议高度。 布局过程中父级要考虑的组件最小建议高度。此值采用组件坐标(以像素为单位)。默认值取决于组件的实现方式。

如果应用程序开发人员设置 minHeight 的值,则将在 explicitMinHeight 中存储新值。不会更改 minHeight 的默认值。因此,在布局过程中,如果应用程序开发人员明确设置了 minHeight,则对组件最小建议高度使用 explicitMinHeight 的值。如果应用程序开发人员未明确设置 minHeight,则使用 measuredMinHeight 的值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 minHeightscaleY 属性影响。

minWidth 布局过程中父级要考虑的组件最小建议宽度。 布局过程中父级要考虑的组件最小建议宽度。此值采用组件坐标(以像素为单位)。默认值取决于组件的实现方式。

如果应用程序开发人员设置 minWidth 的值,则将在 explicitMinWidth 中存储新值。不会更改 minWidth 的默认值。因此,在布局过程中,如果应用程序开发人员明确设置了 minWidth,则对组件最小建议宽度使用 explicitMinWidth 的值。如果应用程序开发人员未明确设置 minWidth,则使用 measuredMinWidth 的值。

容器使用此值计算组件的大小和位置。组件本身确定其默认大小时不会使用此值。因此,如果父项为 Container,则此属性可能不会产生任何效果,要么就是容器在此属性中不起作用。由于此值位于组件坐标中,因此与其父项相关的真正 minWidthscaleX 属性影响。

moduleFactory 模块工厂用作上下文,用于为此组件使用嵌入字体以及查找用于控制此组件样式的样式管理器。mx.core:IFlexModuleFactory 模块工厂用作上下文,用于为此组件使用嵌入字体以及查找用于控制此组件样式的样式管理器。 mouseFocusEnabled 单击时是否可获得焦点。true 单击时是否可获得焦点。如果值为 false,则焦点将转换到已将 mouseFocusEnable 设置为 true 的第一个父项。例如,您可以将某个 Button 控件的此属性设置为 false,这样可使用 Tab 键将焦点移动到该控件,但在单击该控件时不会使其获得焦点。

对于大多数子类(除了 Spark TabBar),默认值为 true。对于 Spark TabBar,默认值为 false

nestLevel 此对象在所属关系层次结构中的深度。 此对象在所属关系层次结构中的深度。测量和布局代码都使用此编号。如果 DisplayList 中没有此组件,则值为 0。 nonInheritingStyles 此组件的非继承样式链的开头内容。 此组件的非继承样式链的开头内容。getStyle() 方法只需访问 nonInheritingStyles[styleName],即可搜索整个与原型链接的链。此对象由 initProtoChain() 设置。开发人员通常不需要直接访问此属性。 numAutomationChildren 此容器包含的自动化子项数。 此容器包含的自动化子项数。此和不应包含任何复合子项,尽管它在自动化层次中确实包含这些不重要的子项。 owner parentApplication 引用包含此 UIComponent 实例的 Application 对象。 引用包含此 UIComponent 实例的 Application 对象。此 Application 对象可能存在于另一应用程序的 SWFLoader 控件中,依此类推,从而形成可使用 parentApplication 遍历的 Application 对象链。

Application 的 parentApplication 属性永远不会是其本身;它通常是加载该对象的 Application 或为空(对于顶级 Application)。

使用 parentApplication 属性遍历应用程序链与使用 parentDocument 属性遍历文档链类似。您可以使用 Application 类的 application 属性访问顶级应用程序。

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

对于此类 Application 对象,parentDocument 属性为空。此属性在 MXML 脚本中非常有用,可以使文档对象链提升一个层次。它有助于使用 parentDocument.parentDocument 遍历此链等。

它的类型为 Object,以便创作者可以访问始祖文档对象上的属性和方法而无需进行转换。

parent percentHeight 以组件父代大小百分比的方式指定组件高度。 以组件父代大小百分比的方式指定组件高度。允许的值为 0-100。默认值为 NaN。设置 heightexplicitHeight 属性会将此属性重置为 NaN。

仅当先前已设置此属性时,此属性才会返回数值;它不会以百分比形式反映组件的确切大小。

对于 UITextField 控件,此属性始终设置为 NaN。

在 Spark 布局中使用时,该属性用于计算组件在缩放和旋转之后的边界高度。例如,如果组件旋转 90 度,则指定 percentHeight 将影响组件宽度。

percentWidth 以组件父代大小百分比的方式指定组件宽度。 以组件父代大小百分比的方式指定组件宽度。允许的值为 0-100。默认值为 NaN。设置 widthexplicitWidth 属性会将此属性重置为 NaN。

仅当先前已设置此属性时,此属性才会返回数值;它不会以百分比形式反映组件的确切大小。

对于 UITextField 控件,此属性始终设置为 NaN。

在 Spark 布局中使用时,该属性用于计算组件在缩放和旋转之后的边界宽度。例如,如果组件旋转 90 度,则指定 percentWidth 将影响组件高度。

postLayoutTransformOffsets mx.geom:TransformOffsets processedDescriptors 临时或延迟子项创建操作后设置为 true,具体取决于发生对象。 临时或延迟子项创建操作后设置为 true,具体取决于发生对象。对于 Container 对象,在 createComponentsFromDescriptors() 方法结束(即 Container 对象使用其子项描述符创建子项)后,该属性设置为 true

例如,如果 Accordion 容器使用延迟的实例化,则在用户导航到 Accordion 容器的第二个窗格并且该窗格创建其子项后,此窗格的 processedDescriptors 属性才变为 true。但是,如果 Accordion 已将 creationPolicy 属性设置为 "all",则在应用程序启动期间此容器第二个窗格的 processedDescriptors 属性设置为 true

非容器类都没有描述符,所以对于这些类,createChildren() 方法创建任何内部组件子项后,该属性设置为 true

repeaterIndex 项目在生成此 UIComponent 的 Repeater 数据提供程序中的索引。 项目在生成此 UIComponent 的 Repeater 数据提供程序中的索引。如果 UIComponent 是由单个 Repeater 对象创建的,请使用此属性,而不要使用 repeaterIndices 属性。如果此 UIComponent 是由嵌套 Repeater 对象创建的,请使用 repeaterIndices 属性。

如果此 UIComponent 并非由 Repeater 创建,则该属性设置为 -1。

repeaterIndices 一个 Array,包含项目在生成此 UIComponent 的父文档的 Repeater 数据提供程序中的索引。 一个 Array,包含项目在生成此 UIComponent 的父文档的 Repeater 数据提供程序中的索引。除非此 UIComponent 位于一个或多个 Repeater 中,否则该 Array 为空。

Array 中的第一个元素与最外面的 Repeater 对应。例如,如果 repeaterIndices 为 [2,4],则表示使用项目 dataProvider[2] 的外部 Repeater 和使用项目 dataProvider[4] 的内部 Repeater。

请注意,如果任一 Repeater 的 startingIndex 属性并非 0,则此属性将与 instanceIndices 属性不同。例如,即使 Repeater 从 dataProvider[4] 开始,第一个重复对象的文档引用也是 b[0],而不是 b[4]。

repeater 对生成此 UIComponent 的父文档中 Repeater 对象的引用。mx.core:IRepeater 对生成此 UIComponent 的父文档中 Repeater 对象的引用。如果 UIComponent 是由单个 Repeater 对象创建的,请使用此属性,而不要使用 repeaters 属性。如果此 UIComponent 是由嵌套 Repeater 对象创建的,请使用 repeaters 属性。

如果此 UIComponent 并非由 Repeater 创建,则该属性设置为 null

repeaters 一个 Array,包含对生成此 UIComponent 的父文档中 Repeater 对象的引用。 一个 Array,包含对生成此 UIComponent 的父文档中 Repeater 对象的引用。除非此 UIComponent 位于一个或多个 Repeater 中,否则该 Array 为空。第一个元素与最外面的 Repeater 对象对应。 resourceManager 对管理所有应用程序本地化资源的对象的引用。mx.resources:IResourceManager 对管理所有应用程序本地化资源的对象的引用。此项是 singleton 实例,实现 IResourceManager 接口。 right 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将属性设置为其默认值 undefined,请使用 MXML 中的 @Clear () 指令或 ActionScript 代码中的 undefined 值。例如,在 MXML 代码中,right.s2="@Clear()" 将取消对状态 s2 中 right 约束的设置。或者在 ActionScript 代码中,button.right = undefined 将取消对 buttonright 约束的设置。

从组件的右边缘到锚点目标的右边缘的水平距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束列。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“col1:10”。

rotationX 表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。 表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。从 0 到 180 的值表示顺时针方向旋转;从 0 到 -180 的值表示逆时针方向旋转。对于此范围之外的值,可以通过加上或减去 360 获得该范围内的值。在计算过程中,Flex 的任一 2D 布局都会忽略此属性。 rotationY 表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。 表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。从 0 到 180 的值表示顺时针方向旋转;从 0 到 -180 的值表示逆时针方向旋转。对于此范围之外的值,可以通过加上或减去 360 获得该范围内的值。在计算过程中,Flex 的任一 2D 布局都会忽略此属性。 rotationZ rotation scaleX 用于指定水平缩放系数的数字。1.0 用于指定水平缩放系数的数字。

默认值为 1.0,即不缩放对象。将 scaleX 值设为 2.0 表示对象将放大 2 倍,将 scaleX 值设为 0.5 表示对象将缩小 2 倍。

值 0.0 是无效值。不要将它设置为 0.0,但可以设置为一个很小的值,或者将 visible 属性设置为 false 来隐藏此组件。

scaleY 用于指定垂直缩放系数的数字。1.0 用于指定垂直缩放系数的数字。

默认值为 1.0,即不缩放对象。将 scaleY 值设为 2.0 表示对象将放大 2 倍,将 scaleY 值设为 0.5 表示对象将缩小 2 倍。

值 0.0 是无效值。不要将它设置为 0.0,但可以设置为一个很小的值,或者将 visible 属性设置为 false 来隐藏此组件。

scaleZ 指定沿着 z 轴的缩放因子的数值。1.0 指定沿着 z 轴的缩放因子的数值。

沿着 z 轴缩放不会影响在 z=0 平面中保持平放的典型组件。对于具有已应用 3D 转换的子项的组件,或具有非零 transformZ 的组件,将受到影响。

默认值为 1.0,即不缩放对象。

在计算过程中,Flex 的任一 2D 布局都会忽略此属性。

screen 返回包含此对象的基本绘图表面大小和位置的对象。 返回包含此对象的基本绘图表面大小和位置的对象。 showInAutomationHierarchy 用于确定自动化对象是否显示在自动化层次中的标志。 用于确定自动化对象是否显示在自动化层次中的标志。层次中不可见的容器的子项显示为下一个最高可见父项的子项。通常,用于布局的容器(如框和画布)不显示在层次中。

如果合适,某些控件强制其子项在层次中显示。例如,List 控件将始终强制项呈示器(包括框)显示在层次中。实现程序必须支持将此属性设置为 true

states 为此组件定义的视图状态。 为此组件定义的视图状态。您只能对应用程序的根或 MXML 组件的根标签指定 states 属性。如果对其他控件指定此属性,则编译器将生成错误。 styleDeclaration 存储此对象的内嵌继承样式。mx.styles:CSSStyleDeclaration 存储此对象的内嵌继承样式。第一次调用该组件的 setStyle() 方法来设置继承样式时,将创建此 CSSStyleDeclaration。开发人员通常不需要直接访问此属性。 styleManager 返回此组件使用的 StyleManager 实例。mx.styles:IStyleManager2 返回此组件使用的 StyleManager 实例。 styleName 此组件使用的类样式。null 此组件使用的类样式。它可以是 String、CSSStyleDeclaration 或 IStyleClient。

如果是 String,则它是 <fx:Style> 标签或 CSS 文件中一个或多个空格分隔类声明的名称。您不能在 styleName 中使用句号。例如,如果您使用名为 ".bigText" 的类样式,请将 styleName 属性设置为 "bigText"(无句号)。

如果是 IStyleClient(通常是 UIComponent),则此组件将使用 styleName 对象中的所有样式。

styleParent 组件的父项用于评估后代选择器。mx.styles:IAdvancedStyleClient 组件的父项用于评估后代选择器。父项也必须是要参加高级样式声明的 IAdvancedStyleClient。 systemManager 返回此组件使用的 SystemManager 对象。mx.managers:ISystemManager 返回此组件使用的 SystemManager 对象。 tabFocusEnabled 一个标志,指示该对象是否能够通过 Tab 键获得焦点。这与 Flash Player 使用的 tabEnabled 属性类似。对于处理键盘输入的组件该标志通常为 true,但是控件栏中的一些组件将其设置为 false,因为它们不能像编辑器一样从另外的组件窃取焦点。true 一个标志,指示该对象是否能够通过 Tab 键获得焦点。

这与 Flash Player 使用的 tabEnabled 属性类似。

对于处理键盘输入的组件该标志通常为 true,但是控件栏中的一些组件将其设置为 false,因为它们不能像编辑器一样从另外的组件窃取焦点。

toolTip 要在 ToolTip 中显示的文本。null 要在 ToolTip 中显示的文本。 top 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将属性设置为其默认值 undefined,请使用 MXML 中的 @Clear () 指令或 ActionScript 代码中的 undefined 值。例如,在 MXML 代码中,top.s2="@Clear()" 将取消对状态 s2 中 top 约束的设置。或者在 ActionScript 代码中,button.top = undefined 将取消对 buttontop 约束的设置。

从组件的上边缘到锚点目标的上边缘的垂直距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束行。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“row1:10”。

transformX 设置组件转换中心的 x 坐标。 设置组件转换中心的 x 坐标。

当该组件为 Spark 转换效果的目标时,可以通过设置 AnimateTransform.autoCenterTransform 属性来覆盖该属性。如果 autoCenterTransformfalse,则转换中心由效果目标的 transformXtransformYtransformZ 属性决定。如果 autoCenterTransformtrue,则效果出现在目标中心 (width/2, height/2) 附近。

在 Spark 效果类上设置该属性会覆盖目标组件上的设置。

spark.effects.AnimateTransform.autoCenterTransformspark.effects.AnimateTransform.transformX
transformY 设置组件转换中心的 y 坐标。 设置组件转换中心的 y 坐标。

当该组件为 Spark 转换效果的目标时,可以通过设置 AnimateTransform.autoCenterTransform 属性来覆盖该属性。如果 autoCenterTransformfalse,则转换中心由效果目标的 transformXtransformYtransformZ 属性决定。如果 autoCenterTransformtrue,则效果出现在目标中心 (width/2, height/2) 附近。

在 Spark 效果类上设置该属性会覆盖目标组件上的设置。

spark.effects.AnimateTransform.autoCenterTransformspark.effects.AnimateTransform.transformY
transformZ 设置组件转换中心的 z 坐标。 设置组件转换中心的 z 坐标。

当该组件为 Spark 转换效果的目标时,可以通过设置 AnimateTransform.autoCenterTransform 属性来覆盖该属性。如果 autoCenterTransformfalse,则转换中心由效果目标的 transformXtransformYtransformZ 属性决定。如果 autoCenterTransformtrue,则效果出现在目标中心 (width/2, height/2) 附近。

在 Spark 效果类上设置该属性会覆盖目标组件上的设置。

spark.effects.AnimateTransform.autoCenterTransformspark.effects.AnimateTransform.transformZ
transitions 一个 Transition 对象 Array,其中的每个 Transition 对象都定义一组效果,用于在视图状态发生更改时播放。 一个 Transition 对象 Array,其中的每个 Transition 对象都定义一组效果,用于在视图状态发生更改时播放。 mx.states.TransitiontweeningProperties 当前在此对象上进行补间的属性数组。 当前在此对象上进行补间的属性数组。

用于警告 EffectManager 此对象的某些属性正在进行补间,因此 EffectManger 不能尝试对相同属性设置动画效果。

uid 对象的唯一标识符。 对象的唯一标识符。Flex 数据驱动的控件(包括作为 List 类的子类的所有控件)使用 UID 跟踪数据提供程序项目。

Flex 可自动创建和管理 UID。但是,有时您必须通过实现 IUID 接口来提供自己的 uid 属性,或通过提供自己的 uid 属性来提高处理效率。对于 Flex 中的大多数用途,UID 不必是全局唯一标识符,通过数据服务发送消息除外。

IUIDmx.utils.UIDUtil
unscaledHeight 用于确定组件的未缩放高度的简便方法。 用于确定组件的未缩放高度的简便方法。组件的绘图和子布局的所有设置均应在以此宽度为宽的矩形边框中完成,还应将此高度作为参数传递到 updateDisplayList() 中。 unscaledWidth 用于确定组件的未缩放宽度的简便方法。组件的绘图和子布局的所有设置均应在以此宽度为宽的矩形边框中完成,还应将此宽度作为参数传递到 updateDisplayList() 中。 用于确定组件的未缩放宽度的简便方法。组件的绘图和子布局的所有设置均应在以此宽度为宽的矩形边框中完成,还应将此宽度作为参数传递到 updateDisplayList() 中。 updateCompletePendingFlag 一个标志,确定某个对象是否已通过所有三个阶段的布局验证(假设需要通过所有验证)。 一个标志,确定某个对象是否已通过所有三个阶段的布局验证(假设需要通过所有验证)。 validationSubField 供验证程序用来将子字段与此组件相关联。 供验证程序用来将子字段与此组件相关联。 verticalCenter 对于组件,此布局约束属性是基于类似命名的样式的外观。

对于组件,此布局约束属性是基于类似命名的样式的外观。要将属性设置为其默认值 undefined,请使用 MXML 中的 @Clear () 指令或 ActionScript 代码中的 undefined 值。例如,在 MXML 代码中,verticalCenter.s2="@Clear()" 将取消对状态 s2 中 verticalCenter 约束的设置。或者在 ActionScript 代码中,button.verticalCenter = undefined 将取消对 buttonverticalCenter 约束的设置。

从组件中心到锚点目标的内容区域中心的垂直距离(以像素为单位)。

默认锚点目标是容器本身。

在具有高级约束的布局中,锚点目标可以是一个约束行。那么,内容区域就是前一行(或容器侧)与目标行之间的空间。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“constraintColumnId:value”将属性值设置为一个字符串,如“row1:10”。

visible 显示对象是否可见。 显示对象是否可见。不可见的显示对象已被禁用。例如,如果 InteractiveObject 实例的 visible=false,则无法单击该对象。

当设置为 true 时,此对象将分派 show 事件。当设置为 false 时,此对象将分派 hide 事件。无论在哪种情况下,对象的子项都不会生成 showhide 事件,除非明确地针对该对象编写一个实现来执行此操作。

width 指定组件在父坐标中的宽度的数字(以像素为单位)。 指定组件在父坐标中的宽度的数字(以像素为单位)。默认值为 0,但当 Flex 在应用程序中设置完组件的大小后,此属性将包含实际的组件宽度。

请注意:您可以在 MXMLwidth 属性中指定一个百分比值(如 width="100%"),但无法在 ActionScript 的 width 属性中使用百分比值。可改用 percentWidth 属性。

设置此属性将导致 resize 事件被分派。有关何时分派此事件的详细信息,请参阅 resize 事件。

percentWidth
x 指定组件在其父容器中的水平位置(以像素为单位)的数字。0 指定组件在其父容器中的水平位置(以像素为单位)的数字。

如果组件的父级是布局容器(如 HBox、Grid 或 Form),则直接设置此属性或调用 move() 都不会有任何效果,或只有暂时的效果,因为这些容器的布局计算会将 x 位置设置为此计算结果。但当父级是 Canvas 或其他绝对定位容器时,则必须几乎始终设置 x 属性,因为这些容器的默认值为 0。

y 指定组件在其父容器中的垂直位置(以像素为单位)的数字。0 指定组件在其父容器中的垂直位置(以像素为单位)的数字。

如果组件的父级是布局容器(如 HBox、Grid 或 Form),则直接设置此属性或调用 move() 都不会有任何效果,或只有暂时的效果,因为这些容器的布局计算会将 x 位置设置为此计算结果。但当父级是 Canvas 或其他绝对定位容器时,则必须几乎始终设置 x 属性,因为这些容器的默认值为 0。

z cacheHeuristic 供 Flex 使用,表示建议为对象实施位图缓存。 供 Flex 使用,表示建议为对象实施位图缓存。如果 cachePolicyUIComponentCachePolicy.AUTO,则 cacheHeuristic 用于控制对象的 cacheAsBitmap 属性。 layoutMatrix3D 用于相对于其同级组件计算组件的布局的转换矩阵。 用于相对于其同级组件计算组件的布局的转换矩阵。此矩阵由组件的 3D 属性(包括诸如 xyrotationscaleXscaleYtransformXtransformY 以及 rotationXrotationYscaleZztransformZ 等 2D 属性)定义。

大多数组件上并未设置任何 3D 转换属性。

该布局矩阵与 postLayoutTransformOffsets 属性的值相结合用于确定组件的最终计算矩阵。

postLayoutTransformOffsets
maintainProjectionCenter 如果为 true,则该组件将使其投影矩阵在其边框的中央保持居中。 如果为 true,则该组件将使其投影矩阵在其边框的中央保持居中。如果未在组件上定义投影矩阵,则会自动添加一个。 transform 一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。 一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。在 Transform 类的条目中对特定属性 matrix、colorTransform 和三个只读属性(concatenatedMatrixconcatenatedColorTransformpixelBounds)进行了说明。

transform 对象的每个属性本身都是一个对象。此概念很重要,因为设置 matrix 或 colorTransform 对象的新值的唯一方法是,创建新对象并将该对象复制到 transform.matrix 或 transform.colorTransform 属性。

例如,要增加显示对象矩阵的 tx 值,您必须创建整个矩阵对象的副本,然后将新对象复制到 transform 对象的 matrix 属性中:

      var myMatrix:Matrix = myUIComponentObject.transform.matrix;  
      myMatrix.tx += 10; 
      myUIComponent.transform.matrix = myMatrix;
      
不能直接设置 tx 属性。下面的代码对 myUIComponent 不起作用:
      myUIComponent.transform.matrix.tx += 10;
      

请注意,对于 UIComponent,与 DisplayObject 不同,transform 保持 matrixmatrix3D 值同步,因此即使在组件自身没有设置 3D 属性时 matrix3D 也不为 null。开发人员应使用 is3D 属性检查组件是否设置了 3D 属性。如果组件具有 3D 属性,则应使用 transform 的 matrix3D 而不使用 transform 的 matrix

setLayoutMatrixsetLayoutMatrix3DgetLayoutMatrixgetLayoutMatrix3Dis3Dmx.geom.Transform
BitmapAsset BitmapAsset 是 flash.display.Bitmap 类的子类,表示您在 Flex 应用程序中嵌入的位图图像。mx.core:IFlexAssetmx.core:IFlexDisplayObjectmx.core:ILayoutDirectionElementmx.core:FlexBitmap BitmapAsset 是 flash.display.Bitmap 类的子类,表示您在 Flex 应用程序中嵌入的位图图像。它用于实现 IFlexDisplayObject 接口,此接口允许在 Image 控件中显示嵌入的位图图像,或将位图图像用作容器背景或组件外观。

嵌入的位图图像可以是 JPEG、GIF 或 PNG 文件。您还可以嵌入由 Flash 生成的 SWF 文件中的位图元件。在上述每种情况下,MXML 编译器都会自动生成一个类,用于扩展 BitmapAsset 以显示嵌入的位图图像。

在写入 Flex 应用程序时,通常不必直接使用 BitmapAsset 类。例如,您可以通过编写如下内容来嵌入 GIF 文件并在 Image 控件中显示该图像:

  <mx:Image id="logo" source="@Embed(source='Logo.gif')"/>

也可以使用 CSS 语法编写如下内容来将该图像用作应用程序的背景图像

  <fx:Style>
      @namespace mx "library://ns.adobe.com/flex/mx"
      mx|Application {
          backgroundImage: Embed(source="Logo.gif")
      }
  <fx:Style/>

而不必了解 MXML 编译器已为您创建了 BitmapAsset 的一个子类。

不过,了解在 ActionScript 级别发生的操作可能会有用。要在 ActionScript 中嵌入位图图像,需要声明一个 Class 类型的变量,然后在其上放置 [Embed] 元数据。例如,您可以按如下所示嵌入 GIF 文件:

  [Bindable]
  [Embed(source="Logo.gif")]
  private var logoClass:Class;

MXML 编译器可识别 .gif 扩展名,将 GIF 数据的代码转换为播放器使用的位图格式,然后自动生成 BitmapAsset 类的子类,并将变量设置为引用此自动生成的类。接着,您可以借助 new 运算符来使用此类引用创建 BitmapAsset 实例,还可以对其应用 BitmapAsset 类的 API:

  var logo:BitmapAsset = BitmapAsset(new logoClass());
  logo.bitmapData.noise(4);

但是,您极少需要自己创建 BitmapAsset 实例,因为只需将 image-related 属性和样式设置为一个 image-producing 类,而组件会根据需要创建图像实例。例如,要在 Image 控件中显示此图像,您可以将 Image 的 source 属性设置为 logoClass。在 MXML 中,您可以按照以下方法执行此操作:

  <mx:Image id="logo" source="{logoClass}"/>
BitmapAsset 构造函数。bitmapDatanull位图图像的数据。 pixelSnappingauto位图是否与最近的像素对齐。 smoothingfalse在缩放时是否对位图进行平滑处理。 构造函数。 invalidateLayoutDirection 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。如果它们不同,该方法负责镜像元素的内容以及更新元素的布局后转换,以便子代继承镜像的坐标系。IVisualElement 通常通过以下方法实现镜像:使用 postLayoutTransformOffsets 按 -1 缩放 X 轴以及按元素宽度平移原点的 x 坐标。此“镜像”转换的净效果是反转 X 轴增加的方向,而不更改元素相对于其父代的原点的位置。 move 将此对象移动到指定的 x 和 y 坐标。x此对象的新 x 位置。 y此对象的新 y 位置。 将此对象移动到指定的 x 和 y 坐标。 setActualSize 设置此对象的实际大小。newWidth此对象的新宽度。 newHeight此对象的新高度。 设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其他情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

layoutDirection 指定元素的所需布局方向:LayoutDirection.LTR(从左到右)、LayoutDirection.RTL(从右到左)或 null(继承)。 指定元素的所需布局方向:LayoutDirection.LTR(从左到右)、LayoutDirection.RTL(从右到左)或 null(继承)。此属性通常按继承样式回退。如果指定 null,则 layoutDirection 样式将设置为 undefined。类似 GraphicElement 的类(实现 ILayoutDirectionElement,但不支持样式)必须另外针对此属性支持 null 值,这意味着 layoutDirection 必须从其父代继承。 measuredHeight 此对象的测量高度。 此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

measuredWidth 此对象的测量宽度。 此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

ILayoutDirectionElement ILayoutDirectionElement 接口定义对象支持 layoutDirection 属性时需要的最低限度属性和方法。 ILayoutDirectionElement 接口定义对象支持 layoutDirection 属性时需要的最低限度属性和方法。 mx.core.LayoutDirectioninvalidateLayoutDirection 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。 当某元素的 layoutDirection 更改或其父代的 layoutDirection 更改时,该元素必须调用该方法。如果它们不同,该方法负责镜像元素的内容以及更新元素的布局后转换,以便子代继承镜像的坐标系。IVisualElement 通常通过以下方法实现镜像:使用 postLayoutTransformOffsets 按 -1 缩放 X 轴以及按元素宽度平移原点的 x 坐标。此“镜像”转换的净效果是反转 X 轴增加的方向,而不更改元素相对于其父代的原点的位置。 layoutDirection 指定元素的所需布局方向:LayoutDirection.LTR(从左到右)、LayoutDirection.RTL(从右到左)或 null(继承)。 指定元素的所需布局方向:LayoutDirection.LTR(从左到右)、LayoutDirection.RTL(从右到左)或 null(继承)。此属性通常按继承样式回退。如果指定 null,则 layoutDirection 样式将设置为 undefined。类似 GraphicElement 的类(实现 ILayoutDirectionElement,但不支持样式)必须另外针对此属性支持 null 值,这意味着 layoutDirection 必须从其父代继承。 mx.core.LayoutDirectionISWFBridgeProvider ISWFBridgeProvider 的实现器提供一个桥,通向不同安全沙箱中的应用程序,或通向用 Flex 编译器的不同版本编译而成并在单独的 ApplicationDomain 中运行的应用程序。 ISWFBridgeProvider 的实现器提供一个桥,通向不同安全沙箱中的应用程序,或通向用 Flex 编译器的不同版本编译而成并在单独的 ApplicationDomain 中运行的应用程序。通过此接口,调用方可以获得通向该应用程序的桥。调用方一旦拥有该桥,随后即可向应用程序分派事件。 childAllowsParent 测试子级是否允许其父级访问子级的显示对象或侦听源于子级的消息。 测试子级是否允许其父级访问子级的显示对象或侦听源于子级的消息。如果允许访问,则为 true;否则为 falseparentAllowsChild 测试父级是否允许其子级访问父级的显示对象或侦听源于父级的消息。 测试父级是否允许其子级访问父级的显示对象或侦听源于父级的消息。如果允许访问,则为 true;否则为 falseswfBridge 通向与此接口的实现器关联的应用程序的桥。 通向与此接口的实现器关联的应用程序的桥。可用于向不同 ApplicationDomain 或不同沙箱中的应用程序发送事件的 IEventDispatcher。 ClassFactory ClassFactory 实例是一个“工厂对象”,Flex 可用其生成其他类的实例,每个实例拥有相同的属性。mx.core:IFactoryObject ClassFactory 实例是一个“工厂对象”,Flex 可用其生成其他类的实例,每个实例拥有相同的属性。

构建工厂对象时,指定 generator 类。然后,在工厂对象上设置 properties 属性。Flex 通过调用工厂对象的 newInstance() 方法使用工厂对象生成实例。

newInstance() 方法创建 generator 类的新实例,并在新实例中设置由 properties 指定的属性。如果需要进一步自定义生成的实例,则可以覆盖 newInstance() 方法。

ClassFactory 类实现 IFactory 接口。因此,通过该类,您可以创建可分配到 IFactory 类型属性的对象,如 List 控件的 itemRenderer 属性或 DataGrid 控件的 itemEditor 属性。

例如,假设您编写了一个名为 ProductRenderer 的项呈示器类,该类包含一个 showProductImage 属性,此属性可以是 truefalse。如果您希望 List 控件使用此呈示器,并使每个呈示器实例都显示产品图像,则应编写以下代码:

  var productRenderer:ClassFactory = new ClassFactory(ProductRenderer);
  productRenderer.properties = { showProductImage: true };
  myList.itemRenderer = productRenderer;

List 控件对 itemRenderer 调用 newInstance() 方法以创建 ProductRenderer 的各实例,并将每个实例的 showProductImage 属性设置为 true。如果希望有一个省略产品图像的不同 List 控件,可以使用 ProductRenderer 类创建另一个 properties 属性设置为 { showProductImage: false } 的 ClassFactory。

使用 properties 属性配置实例的功能非常强大,因为它允许以不同方式使用单个 generator 类。但是,通常创建不需要设置属性的不可配置 generator 类。为此,MXML 允许您使用以下语法:

  <mx:List id="myList" itemRenderer="ProductRenderer">

MXML 编译器自动为您创建 ClassFactory 实例。

mx.core.IFactorymx.controls.ListClassFactory 构造函数。generatornullnewInstance() 方法根据工厂对象生成对象时使用的 Class。 构造函数。 newInstance 使用由 properties 指定的属性创建 generator 类的新实例。已创建的新实例。 使用由 properties 指定的属性创建 generator 类的新实例。

此方法实现 IFactory 接口的 newInstance() 方法。

generator newInstance() 方法根据工厂对象生成对象时使用的类。 newInstance() 方法根据工厂对象生成对象时使用的 Class。 properties 一个 Object,其名称/值对指定对 newInstance() 方法生成的各个对象设置的属性。nullnull 一个 Object,其名称/值对指定对 newInstance() 方法生成的各个对象设置的属性。

例如,如果将 properties 设置为 { text: "Hello", width: 100 },则通过调用 newInstance() 生成的 generator 类的每个实例的 textwidth 将分别设置为 "Hello"100

IUITextField IUITextField 接口为 UITextField 实例定义基本 API 集。mx.core:IIMESupportmx.core:IFlexModulemx.core:IInvalidatingmx.styles:ISimpleStyleClientmx.managers:IToolTipManagerClientmx.core:IUIComponent IUITextField 接口为 UITextField 实例定义基本 API 集。 appendText newText getCharBoundaries charIndex getCharIndexAtPoint xy getFirstCharInParagraph charIndex getImageReference id getLineIndexAtPoint xy getLineIndexOfChar charIndex getLineLength lineIndex getLineMetrics lineIndex getLineOffset lineIndex getLineText lineIndex getParagraphLength charIndex getStyle 样式值。 styleProp样式属性的名称。 getTextFormat beginIndex-1endIndex-1 getUITextFormat mx.core:UITextFormat包含此组件格式设置信息的对象。 replaceSelectedText value replaceText beginIndexendIndexnewText setColor color新的字体颜色。 setFocus setSelection beginIndexendIndex setTextFormat formatbeginIndex-1endIndex-1 truncateToFit 如果此文本需要截断,则返回 truetruncationIndicatornull截断后追加的文本。如果传递 null,将使用可本地化的字符串,如 "..." alwaysShowSelection antiAliasType autoSize backgroundColor background borderColor border bottomScrollV caretIndex condenseWhite defaultTextFormat displayAsPassword doubleClickEnabled embedFonts focusRect gridFitType htmlText ignorePadding inheritingStyles length maxChars maxScrollH maxScrollV mouseEnabled mouseWheelEnabled multiline nestLevel nonInheritingStyles nonZeroTextHeight numLines restrict scrollH scrollV selectable selectionBeginIndex selectionEndIndex sharpness styleSheet tabEnabled tabIndex textColor textHeight textWidth text thickness type useRichTextClipboard wordWrap UIComponentCachePolicy ContainerCreationPolicy 类定义 UIComponent 类的 cachePolicy 属性的常量值。Object ContainerCreationPolicy 类定义 UIComponent 类的 cachePolicy 属性的常量值。 mx.core.UIComponent.cachePolicyAUTO 指定 Flex 框架应使用探试法确定是否将对象缓存为位图。auto 指定 Flex 框架应使用探试法确定是否将对象缓存为位图。 OFF 指定 Flex 框架不应尝试将对象缓存为位图。off 指定 Flex 框架不应尝试将对象缓存为位图。 ON 指定 Flex 框架应始终将对象缓存为位图。on 指定 Flex 框架应始终将对象缓存为位图。 FlexSprite FlexSprite 是 Player 的 Sprite 类的子类,同时也是 UIComponent 的 superclass。flash.display:Sprite FlexSprite 是 Player 的 Sprite 类的子类,同时也是 UIComponent 的 superclass。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexSprite 构造函数。 构造函数。

name 属性设置为 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。

此字符串由对象的类名称和应用程序内的唯一整数连接而成,如 "Button17"

flash.display.DisplayObject.namemx.utils.NameUtil.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(如 "MyApp0.HBox5.Button17")由 mx.utils.NameUtils 类的 displayObjectToString() 方法从对象及其后代的 name 属性中生成。 flash.display.DisplayObject.namemx.utils.NameUtil.displayObjectToString()
IConstraintClient IConstraintClient 接口为支持布局约束的组件定义接口。 IConstraintClient 接口为支持布局约束的组件定义接口。此接口仅供实现基于约束的布局使用。 getConstraintValue 返回指定的约束值。约束值;如果尚未定义约束值,则为空。 constraintName约束值的名称。约束参数为“baseline”、“bottom”、“horizontalCenter”、“left”、“right”、“top”和“verticalCenter”。

有关这些参数的详细信息,请参见 Canvas 和 Panel 容器以及 Styles Metadata AnchorStyles。

返回指定的约束值。
mx.containers.Canvasmx.containers.Panel
setConstraintValue 设置指定的约束值。constraintName约束值的名称。约束参数为“baseline”、“bottom”、“horizontalCenter”、“left”、“right”、“top”和“verticalCenter”。

有关这些参数的详细信息,请参见 Canvas 和 Panel 容器以及 Styles Metadata AnchorStyles。

value约束的新值。
设置指定的约束值。
mx.containers.Canvasmx.containers.Panel
ISelectableList ISelectableList 接口指示该实现器是一个支持 selectedIndex 属性的 IList 元素。mx.collections:IList ISelectableList 接口指示该实现器是一个支持 selectedIndex 属性的 IList 元素。 valueCommit 当 selectedIndex 属性更改时进行分派。mx.events.FlexEvent.VALUE_COMMITselectedIndex 属性更改时进行分派。 change 当 selectedIndex 属性更改时进行分派。mx.events.IndexChangedEvent.CHANGEselectedIndex 属性更改时进行分派。 selectedIndex 选中的 IList 项目的索引。 选中的 IList 项目的索引。 ContextualClassFactory 一个类工厂,提供系统管理器作为创建类的上下文。mx.core:ClassFactory 一个类工厂,提供系统管理器作为创建类的上下文。 ContextualClassFactory 构造函数。generatornullnewInstance() 方法根据工厂对象生成对象时使用的 Class。 moduleFactorymx.core:IFlexModuleFactorynull应在其中创建对象的系统管理器上下文。 构造函数。 newInstance 使用由 properties 指定的属性创建 generator 类的新实例。已创建的新实例。 使用由 properties 指定的属性创建 generator 类的新实例。

此方法实现 IFactory 接口的 newInstance() 方法。

moduleFactory 应在其中创建对象的上下文。mx.core:IFlexModuleFactorynull 应在其中创建对象的上下文。

此属性用于解决在将框架加载为 RSL(RSL 具有自己的 SWF 上下文)时,在应用程序 SWF 中使用嵌入字体的问题。嵌入字体只能从创建它们的 SWF 文件上下文中访问。使用应用程序 SWF 的 systemManager,RSL 可以在应用程序 SWF 上下文中创建对象,它们将有权访问应用程序的嵌入字体。moduleFactory 将调用 create(),用以在 moduleFactory 的上下文中创建对象。

IProgrammaticSkin IProgrammaticSkin 接口定义外观类使用 name 属性外观接口时必须实现的接口。 IProgrammaticSkin 接口定义外观类使用 name 属性外观接口时必须实现的接口。 validateDisplayList validateNow ByteArrayAsset ByteArrayAsset 是 flash.utils.ByteArray 类的子类,表示您在 Flex 应用程序中嵌入的任意字节数据序列。mx.core:IFlexAssetflash.utils:ByteArray ByteArrayAsset 是 flash.utils.ByteArray 类的子类,表示您在 Flex 应用程序中嵌入的任意字节数据序列。

可以嵌入任何类型的文件中的字节数据,并且将始终嵌入整个文件。虽然可以嵌入整个 SWF 文件,但无法嵌入 SWF 文件中特定资源的字节。

MXML 编译器自动生成扩展 ByteArrayAsset 的类,以表示嵌入的数据。

要随意嵌入一个文件,应声明一个类型为 Class 的变量,并使用 MIME 类型 application/octet-stream 为其指定 [Embed] 元数据。例如,您可以通过以下方式嵌入文本文件:

  [Bindable]
  [Embed(source="Story.txt", mimeType="application/octet-stream")]
  private var storyClass:Class;
  

编译器自动生成 ByteArrayAsset 类的子类,并将您的变量设置为对此自动生成的类的引用。然后,您可以使用此类引用使用 new 运算符创建 ByteArrayAsset 实例,并且您还可以使用 ByteArray 类的方法从字节数组中提取信息:

  var storyByteArray:ByteArrayAsset = ByteArrayAsset(new storyClass());
  var story:String = storyByteArray.readUTFBytes(storyByteArray.length);
  

您必须指定嵌入的 MIME 类型为 application/octet-stream,以便按“原有”格式嵌入字节数据,而无需进行解析。它还使自动生成的类扩展 ByteArrayAsset,而不是扩展其他资源类。

例如,如果您嵌入 PNG 文件时没有指定此 MIME 类型,则 PNG 数据将自动转码为播放器使用的位图格式,并自动生成 BitmapAsset 子类来代表它。但是,如果您将 MIME 类型指定为 application/octet-stream,则将不会转码,并且将按原有格式嵌入 PNG 数据,自动生成的类将扩展 ByteArrayAsset。

ByteArrayAsset 构造函数。 构造函数。
UIComponentDescriptor UIComponentDescriptor 实例封装您在 MXML 标签中为可视组件实例指定的信息。mx.core:ComponentDescriptor UIComponentDescriptor 实例封装您在 MXML 标签中为可视组件实例指定的信息。

MXML 文件中的大多数标签描述 UIComponent 对象树。例如,<mx:Application> 标签代表 UIComponent 对象,并且其子容器和控件均是 UIComponent 对象。

MXML 编译器将所有这些 MXML 标签均编译为 UIComponentDescriptor 实例。确切地说,MXML 编译器自动生成 ActionScript 数据结构,即 UIComponentDescriptor 对象树。

在运行时,Container 类的 createComponentsFromDescriptors() 方法使用容器的 childDescriptors 数组中 UIComponentDescriptor 对象中的信息创建实际 UIComponent 对象,这些对象是容器的子级以及子级的子级。根据容器的 creationPolicy 属性的值,会在应用程序启动时,组件的某部分将要转为可见状态或应用程序开发人员手动调用 createComponentsFromDescriptors() 方法时,创建子级。

通常,您不需要自己创建 UIComponentDescriptor 实例;您可以通过 Container 类的 childDescriptors 数组访问 MXML 编译器自动生成的实例。

mx.core.Container.childDescriptorsmx.core.Container.creationPolicymx.core.Container.createComponentsFromDescriptors()UIComponentDescriptor 构造函数。descriptorProperties包含 UIComponentDescriptor 对象属性的名称/值对的 Object,这些属性包括 typeidpropertiesFactoryeventsstylesFactoryeffects 等。 构造函数。 effects MXML 中所指定的包含组件效果的 Array。 MXML 中所指定的包含组件效果的 Array。

例如,如果您编写以下代码:

	  <mx:TextInput showEffect="Fade" hideEffect="Fade"/>

描述符的 effects 属性为 [ "showEffect", "hideEffect" ] Array。

如果未为组件指定 MXML 效果,则 effects 属性为 null

请注意,此属性中不指定效果属性的值。实际上,效果被视为样式,因此,包含在 stylesFactory 属性中。effect Array 仅跟踪 stylesFactory 中实际上是效果的样式。

Container 方法 createComponentsFromDescriptors() 使用此属性向 EffectManager 注册效果。

stylesFactory MXML 中指定的一个 Function,用于构造包含组件实例样式的名称/值对的 Object。 MXML 中指定的一个 Function,用于构造包含组件实例样式的名称/值对的 Object。

例如,如果您编写以下代码:

	  <mx:TextInput borderColor="0x888888" color="0xDDDDDD"/>

描述符的 stylesFactory 属性为 Function:

	  function():void { this.borderColor = 0x888888; this.color = 0xDDDDDD };

如果未为组件实例指定 MXML 样式,则 stylesFactory 属性为 null

FlexLoader FlexLoader 是 Player 的 Loader 类的子类。flash.display:Loader FlexLoader 是 Player 的 Loader 类的子类。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexLoader 构造函数。 构造函数。

name 属性设置为 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。

此字符串由对象的类名称和应用程序内的唯一整数连接而成,如 "FlexLoader13"

flash.display.DisplayObject.namemx.utils.NameUtils.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(如 "MyApp0.HBox5.FlexLoader13")由 mx.utils.NameUtils 类的 displayObjectToString() 方法从对象及其后代的 name 属性中生成。 flash.display.DisplayObject.namemx.utils.NameUtils.displayObjectToString()
IUID IUID 接口定义必须具有唯一标识符 (UID) 的对象的接口,用以唯一地标识对象。 IUID 接口定义必须具有唯一标识符 (UID) 的对象的接口,用以唯一地标识对象。对于 Flex 中的大多数用途,UID 不必是全局唯一标识符,但不包括通过数据服务发送的消息。 uid 此对象的唯一标识符。 此对象的唯一标识符。 FlexShape FlexShape 是播放机的 Shape 类的子类。flash.display:Shape FlexShape 是播放机的 Shape 类的子类。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexShape 构造函数。 构造函数。

name 属性设置为由 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。

此字符串将作为该对象的类名称,后面带有应用程序中唯一的整数,例如 "FlexShape15"

flash.display.DisplayObject.namemx.utils.NameUtil.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(如 "MyApp0.HBox5.FlexShape15")由 mx.utils.NameUtils 类的 displayObjectToString() 方法基于该对象及其始祖的 name 属性生成。 flash.display.DisplayObject.namemx.utils.NameUtil.displayObjectToString()
INavigatorContent INavigatorContent 接口定义容器必须实现的用作导航器容器(例如,ViewStack、TabNavigator 和 Accordion 导航器容器)子项的接口。mx.core:IDeferredContentOwnermx.managers:IToolTipManagerClient INavigatorContent 接口定义容器必须实现的用作导航器容器(例如,ViewStack、TabNavigator 和 Accordion 导航器容器)子项的接口。 mx.containers.Accordionmx.containers.TabNavigatormx.containers.ViewStackicon 该容器的导航器容器显示的图标。 该容器的导航器容器显示的图标。该图标显示在 Accordion 容器的按钮区域和 TabNavigator 容器的选项卡区域。 label 此容器的导航器容器显示的文本。 此容器的导航器容器显示的文本。例如,文本显示在 Accordion 容器的按钮区域和 TabNavigator 容器的选项卡区域。 FontAsset FontAsset 是 flash.text.Font 类的子类,提供在 Flex 应用程序中嵌入的字体。mx.core:IFlexAssetflash.text:Font FontAsset 是 flash.text.Font 类的子类,提供在 Flex 应用程序中嵌入的字体。

嵌入的字体可以是 TrueType (TTF) 或 OpenType (OTF)。您还可以嵌入系统字体或由 Flash 生成的 SWF 文件中的字体。在上述任一情况下,MXML 编译器都会自动生成一个类,用于扩展 FontAsset 以提供嵌入的字体。

在写入 Flex 应用程序时,通常不直接使用 FontAsset 类。例如,您可以使用 font-faceCSS 选择器嵌入字体,而不必了解 MXML 编译器已为您创建了 FontAsset 子类。

但是,了解在 ActionScript 级别发生了什么可能非常有用。要在 ActionScript 中嵌入字体,需要声明一个 Class 类型的变量,然后在其中放置 [Embed] 元数据。例如,您按如下方式嵌入了一个 TTF 文件:

  [Embed(source="Fancy.ttf", fontName="Fancy")] 
  var fancyClass:Class;
  

MXML 编译器将 TTF 数据的代码转化为播放器使用的字体格式,然后自动生成一个 FontAsset 类的子类,并将变量设置为引用此自动生成的类。接着,您可以借助 new 运算符使用此类引用来创建 FontAsset 实例,还可以对其应用 Font 类的 API;例如:

  var fancyFont:FontAsset = FontAsset(new fancyClass());
  var hasDigits:Boolean = fancyFont.hasGlyphs("0123456789");
  

但是,您基本不需要自己创建 FontAsset 实例,因为您使用在 [Embed] 元数据中指定的 fontName 来引用字体;例如,可以将 fontFamilyCSS 样式设置为字体名称(在本例中为 "Fancy"),而不将其设置为 FontAsset 实例(如 fancyFont)或 fancyClass 类引用。例如:

  <mx:Label text="Thank you for your order." fontFamily="Fancy"/>
  
flash.text.FontFontAsset 构造函数。 构造函数。
ScrollPolicy Container 和 ScrollControlBase 类的 horizontalScrollPolicy 和 verticalScrollPolicy 属性的值。Object Container 和 ScrollControlBase 类的 horizontalScrollPolicyverticalScrollPolicy 属性的值。 mx.core.Containermx.core.ScrollControlBaseAUTO 如果子项超出所有者的尺寸,则显示滚动栏。auto 如果子项超出所有者的尺寸,则显示滚动栏。在显示滚动条时并不会因滚动条尺寸而调整所有者的尺寸,因此这可能会导致 scrollbar 遮蔽控件或容器的内容。 OFF 从不显示滚动栏。off 从不显示滚动栏。 ON 总是显示滚动栏。on 总是显示滚动栏。scrollbar 的尺寸将自动添加至所有者内容的尺寸,以便在未显式指定所有者尺寸时确定该尺寸。 IStateClient IStateClient 接口定义组件要支持视图状态所必须实现的接口。 IStateClient 接口定义组件要支持视图状态所必须实现的接口。 currentState 当前视图状态。 当前视图状态。 IVisualElement IVisualElement 接口定义针对可视元素在 Spark 容器中排列和显示时需要的最低限度属性和方法。mx.core:ILayoutElementmx.core:ILayoutDirectionElement IVisualElement 接口定义针对可视元素在 Spark 容器中排列和显示时需要的最低限度属性和方法。 alpha depth 确定容器内各项目的呈示顺序。0 确定容器内各项目的呈示顺序。Spark 容器根据项目的 depth 属性确定这些项目的顺序,具有最低深度的项目在后面,具有较高深度的项目在前面。具有相同深度值的项目按照添加到容器中的顺序显示。 designLayer 指定与该可视元素关联的可选 DesignLayer 实例。mx.core:DesignLayernull 指定与该可视元素关联的可选 DesignLayer 实例。

当分配一个 DesignLayer 时,可视元素在最终将自身的有效可视性或透明度提交给它的支持 DisplayObject(如果适用)时,必须考虑其父层的可视性和透明度。

可视元素必须侦听来自关联层的父项发出的 layerPropertyChange 通知。当层的 effectiveAlphaeffectiveVisibility 发生改变时,元素必须计算其有效可视性(或透明度)且相应地应用。

该属性不应在 MXML 内直接设置。

designLayer 属性不用于 z 轴顺序控件,请参见 depth

深度
height is3D 当元素为 3D 时,则为 true。 当元素为 3D 时,则为 true。元素也可以是 3D 的,因为它具有 3D 转换属性或 3D 布局后转换偏移,或二者都有。 postLayoutTransformOffsetsmx.core.ILayoutElement.hasLayoutMatrix3Downer 此 IVisualElement 对象的所有者。 此 IVisualElement 对象的所有者。默认情况下,它是此 IVisualElement 对象的父代。不过,如果此 IVisualElement 对象是由其父代弹出的一个子组件(如 ComboBox 控件的下拉列表),则所有者是弹出此 IVisualElement 对象的组件。

此属性并非由 Flex 管理,而由各个组件管理。因此,如果使用 PopUpManger.createPopUp()PopUpManger.addPopUp() 方法弹出一个子组件,则应该将该子组件的 owner 属性设置为弹出它的组件。

默认值为 parent 属性的值。

parent 此组件的父容器或组件。 此组件的父容器或组件。只有可视元素应该具有 parent 属性。非可视项目应该使用其他属性引用其所属对象。一般而言,非可视对象使用 owner 属性引用其所属对象。 postLayoutTransformOffsets 定义能够应用于对象转换且在一定程度上对其父布局不可视的一组调整。mx.geom:TransformOffsets 定义能够应用于对象转换且在一定程度上对其父布局不可视的一组调整。

例如,如果希望某个布局为将旋转 90 度的某个对象进行调整,请设置该对象的 rotation 属性。如果希望布局为要旋转的对象进行调整,请设置其 postLayoutTransformOffsets.rotationZ 属性。

visible 控制此可视元素的可见性。true 控制此可视元素的可见性。如果为 true,则对象可见。

如果对象不可视,但将 includeInLayout 属性设置为 true,则该对象占用容器中的空间,但不可视。

如果 visible 设置为 true,对象未必可视,由于其大小以及容器剪裁是否启用。

visible 设置为 false 应该会禁止组件获取焦点。

ILayoutElement.includeInLayout
width x y
FlexSimpleButton FlexSimpleButton 是播放机的 SimpleButton 类的子类。flash.display:SimpleButton FlexSimpleButton 是播放机的 SimpleButton 类的子类。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexSimpleButton 构造函数。 构造函数。

name 属性设置为 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。

此字符串将作为该对象的类名称,后面带有应用程序中唯一的整数,例如 "FlexSimpleButton16"

flash.display.DisplayObject.namemx.utils.NameUtil.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(如 "MyApp0.HBox5.FlexSimpleButton16")由 mx.utils.NameUtils 类的 displayObjectToString() 方法根据对象及其始祖的 name 属性构建。 flash.display.DisplayObject.namemx.utils.NameUtil.displayObjectToString()
IContainer IContainer 是一个接口,指示组件扩展或模拟 mx.core.Container mx.core:IUIComponent IContainer 是一个接口,指示组件扩展或模拟 mx.core.Container mx.core.ContaineraddChildAt childindex addChild child areInaccessibleObjectsUnderPoint point contains child getChildAt index getChildByName name getChildIndex child getObjectsUnderPoint point removeChildAt index removeChild child setChildIndex childindex startDrag lockCenterfalseboundsnull stopDrag swapChildrenAt index1index2 swapChildren child1child2 buttonMode creatingContentPane defaultButton mx.core:IFlexDisplayObject doubleClickEnabled dropTarget focusManager mx.managers:IFocusManager focusRect graphics hitArea horizontalScrollPosition mouseChildren mouseEnabled numChildren soundTransform tabChildren 确定对象的子项是否支持 Tab 键。 确定对象的子项是否支持 Tab 键。

注意:不要将此属性用于 Flex,而是使用 UIComponent.hasFocusableChildren 属性。

mx.core.UIComponent.hasFocusableChildren
tabEnabled tabIndex textSnapshot useHandCursor verticalScrollPosition viewMetrics mx.core:EdgeMetrics
RSLData 描述 RSL 配置数据的类。Object 描述 RSL 配置数据的类。 RSLData 构造函数。rslURLnullRSL 的位置。 policyFileURLnull策略文件 url 的位置(可选)。 digestnullRSL 的摘要。对于没有摘要的 RSL,此为 null。 hashTypenull用来创建摘要的散列类型。唯一支持的值为 SHA256.TYPE_IDisSignedfalse如果 Adobe 签署了 RSL,则为 true,反之则为 false。 verifyDigestfalse确定加载 RSL 后是否验证其摘要。 applicationDomainTargetdefaultRSL 应加载到的应用程序域。有关有效值,请参阅 ApplicationDomainTarget 枚举。 构造函数。 mx.core.ApplicationDomainTargetapplicationDomainTarget 将 RSL 加载到的请求的应用程序域。 将 RSL 加载到的请求的应用程序域。有关有效值,请参阅 ApplicationDomainTarget 枚举。 mx.core.ApplicationDomainTargetdigest RSL 的摘要。 RSL 的摘要。对于没有摘要的 RSL,此为 null。 hashType 用来创建 RSL 摘要的散列类型。 用来创建 RSL 摘要的散列类型。唯一支持的散列类型为 SHA256.TYPE_IDisSigned 如果 Adobe 签署了 RSL,则为 true。 如果 Adobe 签署了 RSL,则为 true。反之则为 false。 moduleFactory 如果该 RSL 应加载到应用程序域中,而非与执行加载的模块工厂相关联的应用程序域中,则为非 null。mx.core:IFlexModuleFactory 如果该 RSL 应加载到应用程序域中,而非与执行加载的模块工厂相关联的应用程序域中,则为非 null。如果为 null,则加载到当前的应用程序域中。 policyFileURL 指定策略文件位置的 URL(可选)。 指定策略文件位置的 URL(可选)。 rslURL RSL 的位置。 RSL 的位置。应用程序或模块的 URL 可以是绝对的也可以是相对的。 verifyDigest 如果将 RSL 加载到内存时必须验证其摘要,则为 true。 如果将 RSL 加载到内存时必须验证其摘要,则为 true。如果无需验证就可加载 RSL,则为 false。已签名 RSL 不论其值为何都需验证。 TextFieldAsset TextFieldAsset 是用于表示 TextField 元件的 flash.text.TextField 类的子类,这些元件是从 SWF 文件(由 Flash 生成)嵌入到 Flex 应用程序中的。mx.core:IFlexAssetmx.core:IFlexDisplayObjectmx.core:FlexTextField TextFieldAsset 是用于表示 TextField 元件的 flash.text.TextField 类的子类,这些元件是从 SWF 文件(由 Flash 生成)嵌入到 Flex 应用程序中的。它用于实现 IFlexDisplayObject 接口,此接口允许在 Image 控件中显示 TextFieldAsset,或者将其用作容器背景或组件外观。

出于完整性原因,此类包含在 Flex 中,从而可以将 Flash 生成的 SWF 文件中的任意类型的元件嵌入到 Flex 应用程序中。但是,Flex 应用程序通常不使用嵌入的 TextField。有关嵌入资源在 Flex 中的工作方式的详细信息,请参考更常用的资源类,如 BitmapAsset。

TextFieldAsset 构造函数。 构造函数。 move 将此对象移动到指定的 x 和 y 坐标。x此对象的新 x 位置。 y此对象的新 y 位置。 将此对象移动到指定的 x 和 y 坐标。 setActualSize 设置此对象的实际大小。newWidth此对象的新宽度。 newHeight此对象的新高度。 设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其他情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

measuredHeight 此对象的测量高度。 此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

measuredWidth 此对象的测量宽度。 此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

IInvalidating IInvalidating 接口为使用 invalidation 执行延迟(而不是立即)属性提交、度量、绘图和布局的组件定义接口。 IInvalidating 接口为使用 invalidation 执行延迟(而不是立即)属性提交、度量、绘图和布局的组件定义接口。 invalidateDisplayList 调用此方法将导致在呈示显示列表前调用组件的 validateDisplayList() 方法。 调用此方法将导致在呈示显示列表前调用组件的 validateDisplayList() 方法。

对于扩展 UIComponent 的组件,这暗示调用 updateDisplayList()

invalidateProperties 调用此方法将导致在呈示显示列表前调用组件的 validateProperties() 方法。 调用此方法将导致在呈示显示列表前调用组件的 validateProperties() 方法。

对于扩展 UIComponent 的组件,这暗示调用 commitProperties()

invalidateSize 调用此方法将导致在呈示显示列表前调用组件的 validateSize() 方法。 调用此方法将导致在呈示显示列表前调用组件的 validateSize() 方法。

对于扩展 UIComponent 的组件,这暗示调用 measure(),除非组件设置了 explicitWidthexplicitHeight

validateNow 根据需要,通过立即调用 validateProperties()、validateSize() 和 validateDisplayList() 来验证并更新此对象的属性和布局。 根据需要,通过立即调用 validateProperties()validateSize()validateDisplayList() 来验证并更新此对象的属性和布局。

当属性更改时,新值通常不会立即对组件发挥作用。通常,会执行此时应运行的所有应用程序代码。然后根据组件验证需要及其在显示列表对象层次结构中的深度,LayoutManager 开始对组件调用 validateProperties()validateSize()validateDisplayList() 方法。

例如,设置 width 属性被延迟,因为可能需要重新计算对象子项或其父项的宽度。如果应用程序代码多次设置了 width 属性,则延迟处理还可以防止重复多次操作。此方法允许您手动覆盖此行为。

IChildList IChildList 接口定义用于访问和处理子项列表的属性和方法,这些列表是 DisplayObjectContainer 的子项的子集。 IChildList 接口定义用于访问和处理子项列表的属性和方法,这些列表是 DisplayObjectContainer 的子项的子集。

例如,请考虑 Container 类。此类将覆盖 DisplayObjectContainer API(如 numChildrengetChildAt() 方法)以只访问“内容”子项,这些子项指您放置在其中的控件和其他容器。但是,Container 还可以包含框架自动创建的其他子项,如背景或边框外观以及滚动条。所以,Container 公开了 IChildList 类型的 rawChildren 属性,允许您访问其所有子项,而不只是内容子项。

再比如,SystemManager 类是一个 DisplayObjectContainer,其子项分成了多个层:底层为 Application 等常规子项,然后向上依次为弹出子项、工具提示,最上层为光标。SystemManager 具有名为 popUpChildrentoolTipChildrencursorChildren 的属性(您可以使用它们来访问这些层),并且每个属性都是 IChildList 类型。因此,您可以使用 systemManager.popUpChildren.numChildren 属性计算弹出子项的数量,使用 systemManager.toolTipChildren.addChild() 方法将其他 DisplayObject 插入到工具提示层,等等。

mx.core.Container.rawChildrenmx.managers.SystemManager.rawChildrenmx.managers.SystemManager.popUpChildrenmx.managers.SystemManager.toolTipChildrenmx.managers.SystemManager.cursorChildrenaddChildAt 在此子级列表的指定索引处添加子 DisplayObject。已添加的子项;它与传入的 child 参数相同。 child要添加为子项的 DisplayObject。 index要在其中添加子项的索引。 在此子级列表的指定索引处添加子 DisplayObject。索引 0 代表 DisplayList 的开始位置,而索引 numChildren 代表 DisplayList 的结束位置。

将子项添加到子级列表末尾之外的任何位置都会增加以前位于该索引或更高索引处的子项的索引。

addChild 在此子项列表的末尾添加一个子 DisplayObject。已添加的子项;它与传入的参数相同。 child要添加为子项的 DisplayObject。 在此子项列表的末尾添加一个子 DisplayObject。

调用 childList.addChild(child) 与调用 childList.addChild(child, childList.numChildren) 的效果相同,添加新子项后,新子项的索引为 (child.numChildren - 1)

contains 确定 DisplayObject 是否在此子级列表中,或是否为此子级列表中的子项的后代。如果 DisplayObject 在此子级列表中,或者是此子级列表中子项的后代,则返回 true,否则返回 falsechild要测试的 DisplayObject。 确定 DisplayObject 是否在此子级列表中,或是否为此子级列表中的子项的后代。 getChildAt 获取此子级列表中指定索引处的子 DisplayObject。位于指定索引位置处的子项。 index从 0 到 (numChildren - 1) 的整数,指定此子级列表中子项的索引。 获取此子级列表中指定索引处的子 DisplayObject。 getChildByName 获取此子级列表中具有指定名称的子 DisplayObject。具有指定名称的子项。 name要返回的子项的名称。 获取此子级列表中具有指定名称的子 DisplayObject。 getChildIndex 获取此子级列表中特定子项的索引。子项的索引,该索引是 0 和 (numChildren - 1) 之间的一个整数。 child要获取其索引的子项。 获取此子级列表中特定子项的索引。

子级列表中第一个子项的索引为 0,第二个子项的索引为 1,最后一个子项的索引为 (numChildren - 1)

如果 getChildIndex(myChild) 返回 5,则 myView.getChildAt(5) 返回 myChild

如果通过调用 addChild() 方法添加子项,则新子项的索引等于现有子项的最大索引加 1。

您可以使用 addChildAt() 方法在指定索引处插入子项。在这种情况下,先前位于该索引或更高索引处的子项的索引都将增加 1,以便所有子项的索引范围为从 0 到 (numChildren - 1)

如果通过调用 removeChild()removeChildAt() 方法删除子项,则位于更高索引处的子项的索引将减小 1,以便所有子项的索引范围为从 0 到 (numChildren - 1)

如果通过调用 setChildIndex() 方法更改子项的索引,则位于旧索引和新索引之间(包括两者)的子项将调整其索引,以便所有子项的索引范围为从 0 到 (numChildren - 1)

getObjectsUnderPoint 返回位于子级列表中指定点下方的 DisplayObject 的数组。位于指定点下方且属于此 Container 子项的对象的数组。 point要查看其下方内容的点。 返回位于子级列表中指定点下方的 DisplayObject 的数组。 removeChildAt 从此子级列表中删除指定索引处的子 DisplayObject。被删除的子项。 index要删除的 DisplayObject 的子索引。 从此子级列表中删除指定索引处的子 DisplayObject。

删除子级列表末尾之外的任意位置的子项都会减小更高索引处的子项的索引。

已删除子项的父项将设置为 null,并且如果没有对该子项的任何其他引用,则将其作为垃圾回收。

removeChild 从此子级列表中删除指定的子 DisplayObject。被删除的子项;它与传入的参数相同。 child要删除的 DisplayObject。 从此子级列表中删除指定的子 DisplayObject。

删除子级列表末尾之外的任意位置的子项都会减小更高索引处的子项的索引。

已删除子项的父项将设置为 null,并且如果没有对该子项的任何其他引用,则将其作为垃圾回收。

setChildIndex 更改此子级列表中特定子项的索引。child要设置其索引的子项。 newIndex指定子项的新索引。新索引必须是零和 (numChildren - 1) 之间的一个整数。 更改此子级列表中特定子项的索引。请参阅 getChildIndex() 方法了解子项索引的说明。 numChildren 此子级列表中的子项数。 此子级列表中的子项数。
IDeferredContentOwner IDeferredContentOwner 接口为延迟实例化定义属性和方法。mx.core:IUIComponent IDeferredContentOwner 接口为延迟实例化定义属性和方法。 spark.components.SkinnableContainermx.core.Containermx.core.INavigatorContentcontentCreationComplete 已创建此组件的内容后分派。mx.events.FlexEvent.CONTENT_CREATION_COMPLETEmx.events.FlexEvent 已创建此组件的内容后分派。借助延迟实例化,可以在创建组件之后很长时间创建组件的内容。 createDeferredContent 为此组件创建内容。 为此组件创建内容。如果 creationPolicy 属性的值为 autoall,则此 Flex 框架将调用此方法。如果 creationPolicy 属性的值为 none,则必须显式调用此方法来创建该组件的内容。 creationPolicy 此组件的内容创建策略。"auto" 此组件的内容创建策略。

可能的值包括:

  • auto - 恰好在需要内容之前自动创建内容。
  • all - 只要创建父组件,就创建内容。因为此选项会增加启动时间和内存使用量,所以仅应将此选项作为最后的手段使用。
  • none - 必须通过调用 createDeferredContent() 方法手动创建内容。

如果没有为容器指定 creationPolicy,则该容器将继承其父项的 creationPolicy 属性的值。

deferredContentCreated 一个标志,指示是否已创建延迟的内容。 一个标志,指示是否已创建延迟的内容。
ITransientDeferredInstance ITransientDeferredInstance 接口扩展 IDeferredInstance,并可以使用户将延迟的实例工厂重置为其初始状态(通常这意味着释放对组件的任何已知引用,如将引用该实例的所属文档属性设置为 null)。mx.core:IDeferredInstance ITransientDeferredInstance 接口扩展 IDeferredInstance,并可以使用户将延迟的实例工厂重置为其初始状态(通常这意味着释放对组件的任何已知引用,如将引用该实例的所属文档属性设置为 null)。如果所需的行为是当某个状态不再应用时破坏某个状态特定的元素,则 AddItems 状态覆盖会利用此附加的功能。Flex 编译器使用与 IDeferredInstance 相同的自动强操作规则。 mx.states.AddItemsmx.core.IDeferredInstancereset 将工厂的状态重置为其初始状态,从而清除对缓存的实例的任何引用。 将工厂的状态重置为其初始状态,从而清除对缓存的实例的任何引用。 ButtonAsset ButtonAsset 是 flash.display.SimpleButton 类的子类,代表 Flash 生成的 SWF 文件中可以嵌入 Flex 应用程序的按钮元件。mx.core:IFlexAssetmx.core:IFlexDisplayObjectmx.core:FlexSimpleButton ButtonAsset 是 flash.display.SimpleButton 类的子类,代表 Flash 生成的 SWF 文件中可以嵌入 Flex 应用程序的按钮元件。该子类实现了 IFlexDisplayObject 接口,此接口使 SimpleButtonAsset 可以显示在 Image 控件中或用作容器背景或组件外观。

出于完整性原因,此类包含在 Flex 中,从而可以将 Flash 生成的 SWF 文件中的任意类型的元件嵌入到 Flex 应用程序中。但是,Flex 应用程序通常不使用嵌入的 SimpleButton。有关嵌入资源在 Flex 中的工作方式的详细信息,请参考更常用的资源类,如 BitmapAsset。

ButtonAsset 构造函数。 构造函数。 move 将此对象移动到指定的 x 和 y 坐标。x此对象的新 x 位置。 y此对象的新 y 位置。 将此对象移动到指定的 x 和 y 坐标。 setActualSize 设置此对象的实际大小。newWidth此对象的新宽度。 newHeight此对象的新高度。 设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其他情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

measuredHeight 此对象的测量高度。 此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

measuredWidth 此对象的测量宽度。 此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

MovieClipLoaderAsset MovieClipLoaderAsset 是 MovieClipAsset 类的子类,代表您在 Flex 应用程序中嵌入的 SWF 文件。mx.core:IFlexAssetmx.core:IFlexDisplayObjectmx.core:MovieClipAsset MovieClipLoaderAsset 是 MovieClipAsset 类的子类,代表您在 Flex 应用程序中嵌入的 SWF 文件。 complete 在全部加载 SWF 资源后分派。flash.events.Event.COMPLETEflash.events.Event 在全部加载 SWF 资源后分派。 MovieClipLoaderAsset 构造函数。 构造函数。 initialHeight measuredHeight 属性的后备存储。0 measuredHeight 属性的后备存储。子类应在构造函数中设置此值。 initialWidth measuredWidth 属性的后备存储。0 measuredWidth 属性的后备存储。子类应在构造函数中设置此值。 movieClipData 包含内部内容的 ByteArray。 包含内部内容的 ByteArray。在子类中被覆盖。 IPropertyChangeNotifier IPropertyChangeNotifier 接口定义标记接口。flash.events:IEventDispatchermx.core:IUID IPropertyChangeNotifier 接口定义标记接口。支持此接口的类以一种专业化方式声明支持事件传送。实现此接口的类必须对此类以及作为属性公开的所有嵌套类的每个属性分派事件。对于那些匿名属性(复杂的和非强类型的),实现这些类可提供自定义支持,或者可直接使用 ObjectProxy 类。此接口的实现者应使用 PropertyChangeEvent.createUpdateEvent() 方法为分派构建适当的更新事件。
   
 function set myProperty(value:Object):void
 {
    var oldValue:IPropertyChangeNotifier = _myProperty;
    var newValue:IPropertyChangeNotifier = value;
    
    // Need to ensure to dispatch changes on the new property.
    // Listeners use the source property to determine which object 
    // actually originated the event.
    // In their event handler code, they can tell if an event has been 
    // propagated from deep within the object graph by comparing 
    // event.target and event.source. If they are equal, then the property
    // change is at the surface of the object. If they are not equal, the
    // property change is somewhere deeper in the object graph.
    newValue.addEventListener(
                PropertyChangeEvent.PROPERTY_CHANGE, 
                dispatchEvent);
 
    // need to stop listening for events from the old property
    oldValue.removeEventListener(
                PropertyChangeEvent.PROPERTY_CHANGE,
                dispatchEvent);
 
    _myProperty = newValue;
 
    // now notify anyone that is listening
    if (dispatcher.hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE))
    {
         var event:PropertyChangeEvent = 
                         PropertyChangeEvent.createUpdateEvent(
                                                       this,
                                                       "myProperty",
                                                       newValue,
                                                       oldValue);
        dispatchEvent(event);
     }
  }
 
      
  
IVisualElementContainer IVisualElementContainer 接口定义容器针对显示管理 Spark 组件时需要的最低限度属性和方法。 IVisualElementContainer 接口定义容器针对显示管理 Spark 组件时需要的最低限度属性和方法。

请注意,Spark SkinnableDataContainer 与 DataGroup 容器不会实现该接口。这些容器通过 dataProvider 属性管理子项。

mx.core.IVisualElementaddElementAt 将可视元素添加到此容器中。如果该元素与容器相同。 ArgumentErrorArgumentError如果在子列表中不存在该索引位置。 RangeErrorRangeError已添加的元素。 mx.core:IVisualElementelementmx.core:IVisualElement要添加为此可视容器的子项的元素。 index将该元素添加到的索引位置。如果指定当前占用的索引位置,则该位置以及所有更高位置上的子对象会在子级列表中上移一个位置。 将可视元素添加到此容器中。该元素将被添加到指定的索引位置。索引 0 代表显示列表中的第一个元素。

如果添加的可视元素已有一个不同的容器作为父项,则该元素将会从其他容器中删除。

elementAdd将元素添加到子列表时分派。 将元素添加到子列表时分派。
addElement 将可视元素添加到此容器中。如果该元素与可视容器相同。 ArgumentErrorArgumentError已添加的元素。 mx.core:IVisualElementelementmx.core:IVisualElement要添加为此容器的子项的可视元素。 将可视元素添加到此容器中。该元素将在添加完所有其他元素之后添加,并出现于所有其他元素之上。要将可视元素添加到特定索引位置,请使用 addElementAt() 方法。

如果添加的可视元素已有一个不同的容器作为父项,则该元素将会从其他容器中删除。

elementAdd将元素添加到子列表时分派。 将元素添加到子列表时分派。
getElementAt 返回指定索引处的可视元素。如果在子列表中不存在该索引位置。 RangeErrorRangeError位于指定索引位置的元素。 mx.core:IVisualElementindex要检索的元素的索引。 返回指定索引处的可视元素。 getElementIndex 返回可视元素的索引位置。如果元素不是此可视容器的子项。 ArgumentErrorArgumentError容器中元素的索引位置。 elementmx.core:IVisualElement可视元素。 返回可视元素的索引位置。 removeAllElements 从容器中删除所有可视元素。 从容器中删除所有可视元素。 removeElementAt 从容器中的指定索引位置删除可视元素。如果在子列表中不存在该索引。 RangeErrorRangeError已删除的元素。 mx.core:IVisualElementindex要删除的元素的索引。 从容器中的指定索引位置删除可视元素。在该可视容器中,位于该元素之上的所有元素的索引位置都减少 1。 removeElement 从此容器的子列表中删除指定的可视元素。如果元素参数不是此可视容器的子项。 ArgumentErrorArgumentError已删除的元素。 mx.core:IVisualElementelementmx.core:IVisualElement要从容器中删除的元素。 从此容器的子列表中删除指定的可视元素。在该可视容器中,位于该元素之上的所有元素的索引位置都减少 1。 setElementIndex 在可视容器中更改现有可视元素的位置。如果在子列表中不存在该索引。 RangeErrorRangeError如果元素参数不是此可视容器的子项。 ArgumentErrorArgumentErrorelementmx.core:IVisualElement要为其更改索引编号的元素。 index元素的最终索引编号。 在可视容器中更改现有可视元素的位置。

在调用 setElementIndex() 方法并指定一个已经占用的索引位置时,只有元素的先前位置和新位置之间的位置发生更改。其他位置保持不变。

如果将某个可视元素移动到低于其当前索引位置的某个索引位置,则在这两个索引之间的所有元素的索引都增加 1。如果将某个元素移动到高于其当前索引位置的某个索引位置,则在这两个索引之间的所有元素的索引都减少 1。

swapElementsAt 交换容器中位于两个指定索引位置的可视元素。如果在可视容器中不存在任何一个索引。 RangeErrorRangeErrorindex1第一个元素的索引。 index2第二个元素的索引。 交换容器中位于两个指定索引位置的可视元素。所有其他可视元素仍位于相同的索引位置。 swapElements 交换两个指定可视元素的索引。element1mx.core:IVisualElement第一个可视元素。 element2mx.core:IVisualElement第二个可视元素。 交换两个指定可视元素的索引。所有其他元素仍位于相同的索引位置。 numElements 此容器中的可视元素的数量。 此容器中的可视元素的数量。可视元素包括实现 IVisualElement 接口的类,例如,UIComponent 和 GraphicElement 的子类。
IRepeaterClient IRepeaterClient 接口定义可使用 Repeater 为其创建多个实例的组件的 API。 IRepeaterClient 接口定义可使用 Repeater 为其创建多个实例的组件的 API。IRepeaterClient 接口是由 UIComponent 类实现的,因此所有 Flex 框架控件和容器都将继承此接口。 initializeRepeaterArrays 初始化 instanceIndices、repeaterIndices 和 repeaters 属性。parentmx.core:IRepeaterClient创建此组件的父 Repeater。 初始化 instanceIndicesrepeaterIndicesrepeaters 属性。

此方法由 Flex 框架调用。开发人员不应调用它。

instanceIndices 一个包含索引的 Array,从重复组件实例的文档中引用该实例时将用到这些索引。 一个包含索引的 Array,从重复组件实例的文档中引用该实例时将用到这些索引。除非组件在一个或多个 Repeater 内部,否则此 Array 为空。第一个元素与最外面的 Repeater 对应。例如,如果 id"b",并且 instanceIndices[ 2, 4 ],则您可在文档上以 b[2][4] 格式引用它。 isDocument repeaterIndices 一个包含项目索引的 Array,这些项目位于生成该组件的 Repeater 的数据提供程序中。 一个包含项目索引的 Array,这些项目位于生成该组件的 Repeater 的数据提供程序中。除非组件在一个或多个 Repeater 内部,否则此 Array 为空。第一个元素对应于最外侧的 Repeater 组件。例如,如果 repeaterIndices[ 2, 4 ],则外部 Repeater 组件使用其 dataProvider[2] 数据项目,而内部 Repeater 组件使用其 dataProvider[4] 数据项目。

如果任一 Repeater 组件的 startingIndex 为非零值,此属性就会与 instanceIndices 不同。例如,即使 Repeater 组件从 dataProvider 项目 4 开始,对第一个重复组件的文档引用也是 b[0],而不是 b[4]

repeaters 包含有组件附带的 Repeater 的 Array。 包含有组件附带的 Repeater 的 Array。除非组件在一个或多个 Repeater 内部,否则此 Array 为空。第一个元素与最外面的 Repeater 对应。
IDataRenderer IDataRenderer 接口用于为具有 data 属性的组件定义接口。 IDataRenderer 接口用于为具有 data 属性的组件定义接口。

系统使用 data 属性将要呈示或编辑的数据传递给以下组件:在 list 控件(如 List、HorizontalList、TileList、DataGrid 和 Tree 控件)中的项呈示器或项目编辑器中使用的组件,或者用作图表中呈示器的组件。组件必须实现 IDataRenderer,以便主机组件可以传递此信息。所有 Flex 容器和许多 Flex 组件都实现 IDataRenderer 和 data 属性。

在 list 控件中,Flex 将项呈示器或项目编辑器的 data 属性设置为数据提供程序中对应于正在呈示或编辑的项目的元素。对于 DataGrid 控件,data 属性包含 DataGrid 控件整行的而不仅仅是该项目的数据提供程序元素。

若要实现此接口,需定义 setter 和 getter 方法以实现 data 属性。通常,setter 方法将 data 属性的值写入内部变量并分派 dataChange 事件,而 getter 方法返回内部变量的当前值,如下例所示:

    // Internal variable for the property value.
    private var _data:Object;
    
    // Make the data property bindable.
    [Bindable("dataChange")]
    
    // Define the getter method.
    public function get data():Object {
        return _data;
    }
    
    // Define the setter method, and dispatch an event when the property
    // changes to support data binding.
    public function set data(value:Object):void {
        _data = value;
    
        dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE));
    }
  
data 要呈示或编辑的数据。 要呈示或编辑的数据。
ITextInput 为可选择编辑的单行文本字段定义一个接口。mx.core:IDataRenderermx.controls.listClasses:IDropInListItemRenderermx.managers:IFocusManagerComponentmx.core:IFontContextComponentmx.core:IIMESupportmx.controls.listClasses:IListItemRenderermx.core:IUIComponentmx.core:IInvalidatingmx.styles:IStyleClient 为可选择编辑的单行文本字段定义一个接口。 selectRange 选择由这些参数指定的范围内的文本。anchorPosition当前所选内容中第一个字符从零开始的字符索引值。 activePosition当前所选内容中最后一个字符后的位置从零开始的索引(与最后一个字符的从一开始的索引相等)。 选择由这些参数指定的范围内的文本。 showBorderAndBackground 确定 TextInput 的边框和背景是否可视。visible如果可见,则为 true,如果不可见,则为 false 确定 TextInput 的边框和背景是否可视。 editable 指示用户是否可以编辑此控件中的文本。3196 true 指定是否可以编辑该组件 指示用户是否可以编辑此控件中的文本。如果值为 true,则表示用户可以编辑文本。 horizontalScrollPosition 当前显示的最左端像素的内容区域中的像素位置。3194 0 当前显示的最左端字符的像素位置 当前显示的最左端像素的内容区域中的像素位置。(内容区域包括控件的所有内容,不是仅包括当前显示的部分。)该属性始终设置为 0,并且如果将 wordWrap 设置为 true,将忽略更改。 maxChars 用户可以在文本字段中输入的最大字符数。3191 TextInput 最多可以容纳的字符数 用户可以在文本字段中输入的最大字符数。此属性对通过设置控件的 texthtmlText 属性指定的文本的长度没有限制。

默认值为 0,这是一种特殊情况,表示字符数不受限制。

mouseChildren mouseEnabled parentDrawsFocus 如果为 true,则调用此控件的 drawFocus() 方法会转到其父项的 drawFocus() 方法上。false 如果为 true,则对此控件的 drawFocus() 方法的调用会转到其父项的 drawFocus() 方法上。这用于当 TextInput 为复合控件(如 NumericStepper 或 ComboBox)的一部分时。 restrict 指示用户可以输入到控件的字符集。3193 null 可以输入到 TextInput 的字符集。 指示用户可以输入到控件的字符集。如果 restrict 属性的值为 null,则可以输入任何字符。如果 restrict 属性的值为空字符串,则不能输入任何字符。此属性只限制用户交互;脚本可以将任何文本放入文本字段中。如果 restrict 属性的值为字符串,则只能在文本字段中输入该字符串中的字符。

Flex 按从左到右的顺序浏览字符串。可以使用连字符 (-) 指定一个范围。如果字符串以尖号 (^) 开头,则先接受所有字符,然后从接受字符集中排除字符串中 ^ 之后的字符。如果字符串不以尖号 (^) 开头,则最初不接受任何字符,然后将字符串中的字符包括在接受字符集中。

由于某些字符在 restrict 属性中使用时具有特殊的意义,因此必须使用反斜杠字符指定文本字符 -、^ 和 \。将 restrict 属性用作 MXML 标签中的属性时,请使用单一反斜杠,如下例所示:\^\-\\。当您在 ActionScript 表达式中设置 restrict 时,请使用两个反斜杠,如下例所示:\\^\\-\\\。

flash.text.TextField.restrict
selectable 一个标志,指示是否可以选择 TextInput 中的文本。 一个标志,指示是否可以选择 TextInput 中的文本。 selectionActivePosition 当前所选内容中最后一个字符后的位置从零开始的索引(与最后一个字符的从一开始的索引相等)。0 所选内容中最后一个字符从零开始的索引值。 当前所选内容中最后一个字符的位置从零开始的索引(与最后一个字符的从一开始的索引相等)。例如,如果所选内容中的最后一个字符是第五个字符,则此属性的值为 5。当控件获得焦点时,如果已经设置 selectionAnchorIndexselectionActiveIndex 这两种属性,则将能够看到选定内容。 selectionAnchorPosition 当前所选内容中第一个字符从零开始的字符索引值。0 所选内容中第一个字符从零开始的索引值。 当前所选内容中第一个字符从零开始的字符索引值。例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推。当控件获得焦点时,如果已经设置 selectionAnchorIndexselectionActiveIndex 这两种属性,则将能够看到选定内容。 text 控件中出现的纯文本。3190 "" 获取或设置 TextInput 内容 控件中出现的纯文本。其外观由此 Lable 控件的 CSS 样式确定。

文本字符串中的任何 HTML 标签都将被忽略,其显示效果就像以字符串形式输入的一样。要显示使用 HTML 标签进行格式设置的文本,请改用 htmlText 属性。如果设置了 htmlText 属性,则 HTML 将替换使用此属性设置的所有文本,并且 text 属性将返回 HTML 文本的纯文本版本,而从中去除了所有 HTML 标签。有关详细信息,请参阅 htmlText 属性。

要在文本中包括特殊字符左尖括号 (<)、右尖括号 (>) 或和号 (&),请将文本字符串包含在 CDATA 标签中。此外,您可以使用 HTML 字符实体表示特殊字符,例如 &lt;

如果尝试将此属性设置为 null,则该属性将设置为空字符串。text 属性可暂时使用值 null,此值表示刚刚设置了 htmlText 值,但相应的 text 值尚未确定。

IFlexDisplayObject IFlexDisplayObject 接口定义外观元素的接口。flash.display:IBitmapDrawableflash.events:IEventDispatcher IFlexDisplayObject 接口定义外观元素的接口。至少,外观必须是一个 DisplayObject 并实现此接口。 getBounds targetCoordinateSpace getRect targetCoordinateSpace globalToLocal point hitTestObject obj hitTestPoint xyshapeFlagfalse localToGlobal point move 将此对象移动到指定的 x 和 y 坐标。x此对象的新 x 位置。 y此对象的新 y 位置。 将此对象移动到指定的 x 和 y 坐标。 setActualSize 设置此对象的实际大小。newWidth此对象的新宽度。 newHeight此对象的新高度。 设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其他情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

accessibilityProperties alpha blendMode cacheAsBitmap filters height loaderInfo mask measuredHeight 此对象的测量高度。 此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

measuredWidth 此对象的测量宽度。 此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

mouseX mouseY name opaqueBackground parent root rotation scale9Grid scaleX scaleY scrollRect stage transform visible width x y
EventPriority EventPriority 类定义 EventDispatcher addEventListener() 方法的 priority 参数的常量值。Object EventPriority 类定义 EventDispatcher addEventListener() 方法的 priority 参数的常量值。

数值越大,事件侦听器的优先级越高。对于所有优先级为 N 的侦听器和优先级为 N - 1 的侦听器,将优先处理前者。如果两个或更多个侦听器共享相同的优先级,则按照它们的添加顺序进行处理。

优先级可以是正数、0 或负数。默认优先级为 0。

您不应该编写取决于这些常量值的代码。它们在 Flex 的未来版本中可能会有所变动。

BINDING 自动生成的用于评估数据绑定表达式的事件处理程序需要在其他任何处理程序前执行,因此,它们的优先级高于默认优先级。100 自动生成的用于评估数据绑定表达式的事件处理程序需要在其他任何处理程序前执行,因此,它们的优先级高于默认优先级。 CURSOR_MANAGEMENT CursorManager 具有的鼠标事件处理程序必须在其他鼠标事件处理程序之前执行,因此,它们具有高优先级。200 CursorManager 具有的鼠标事件处理程序必须在其他鼠标事件处理程序之前执行,因此,它们具有高优先级。 DEFAULT_HANDLER 某些组件侦听它们在自身上分派的事件并允许其他侦听器调用 preventDefault() 方法以告知组件不要执行默认动作。-50 某些组件侦听它们在自身上分派的事件并允许其他侦听器调用 preventDefault() 方法以告知组件不要执行默认动作。这些组件必须按照低于默认优先级的优先级进行侦听,以便首先执行其他处理程序,并有机会调用 preventDefault()DEFAULT 组件实例上的事件处理程序以默认优先级 (0) 执行。0 组件实例上的事件处理程序以默认优先级 (0) 执行。 EFFECT 自动生成的触发效果的事件处理程序在其他事件处理程序后执行,因此,它们的优先级低于默认优先级。-100 自动生成的触发效果的事件处理程序在其他事件处理程序后执行,因此,它们的优先级低于默认优先级。
IFactory IFactory 接口定义工厂类(如 ClassFactory)必须实现的接口。 IFactory 接口定义工厂类(如 ClassFactory)必须实现的接口。IFactory 类型的对象是“工厂对象”,Flex 使用它来生成另一类的多个实例(每个实例具有相同的属性)。

例如,DataGridColumn 具有 IFactory 类型的 itemRenderer;它调用 itemRenderer.newInstance() 来为 DataGrid 的某一特定列创建单元格。

mx.core.ClassFactorynewInstance 创建某一类(由实现 IFactory 的类确定)的实例。新创建的实例。 创建某一类(由实现 IFactory 的类确定)的实例。
DeferredInstanceFromClass 延迟实例工厂,创建并返回指定类的实例。mx.core:ITransientDeferredInstanceObject 延迟实例工厂,创建并返回指定类的实例。在首次需要某个类并且此后需要引用实例时,应用程序可以使用 getInstance() 方法为该类创建实例。 DeferredInstanceFromFunctionDeferredInstanceFromClass 构造函数。generatorgetInstance() 方法创建并返回的实例所属的类。 构造函数。 getInstance 创建并返回在 DeferredInstanceFromClass 构造函数中指定的类的实例(如果尚不存在);否则,返回已经创建的类实例。在 DeferredInstanceFromClass 构造函数中指定的类的实例。 创建并返回在 DeferredInstanceFromClass 构造函数中指定的类的实例(如果尚不存在);否则,返回已经创建的类实例。 reset 将工厂的状态重置为最初的、未初始化的状态。 将工厂的状态重置为最初的、未初始化的状态。将清除对缓存的实例的引用。 FlexMovieClip FlexMovieClip 是 Player 的 MovieClip 类的子类。flash.display:MovieClip FlexMovieClip 是 Player 的 MovieClip 类的子类。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexMovieClip 构造函数。 构造函数。

name 属性设置为 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。

此字符串由对象的类名称和应用程序内的唯一整数连接而成,如 "FlexMovieClip14"

flash.display.DisplayObject.namemx.utils.NameUtil.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(如 "MyApp0.HBox5.FlexMovieClip14")由 mx.utils.NameUtils 类的 displayObjectToString() 方法从对象及其后代的 name 属性中生成。 flash.display.DisplayObject.namemx.utils.NameUtil.displayObjectToString()
IUIComponent IUIComponent 接口定义基本 API 集,必须实现这些 API 才能创建 Flex 容器或列表的子项。mx.core:IFlexDisplayObject IUIComponent 接口定义基本 API 集,必须实现这些 API 才能创建 Flex 容器或列表的子项。 getExplicitOrMeasuredHeight 一个 Number,在已定义的情况下是 explicitHeight,在未定义的情况下是 measuredHeight。 getExplicitOrMeasuredWidth 一个 Number,在已定义的情况下是 explicitWidth,在未定义的情况下是 measuredWidth。 initialize 初始化对象。 初始化对象。 mx.core.UIComponent.initialize()owns 如果子项以此 UIComponent 为父项或归其所有,则为 truedisplayObject一个 UIComponent。 parentChanged p此 UIComponent 对象的父项。 setVisible valuevisible 属性的新值。指定 true 可显示组件,指定 false 可隐藏组件。 noEventfalse如果为 true,则不分派事件。如果为 false,则当组件变为可见时分派 show 事件,当组件变为不可见时分派 hide 事件。 baselinePosition 组件第一行文本的基线的 y 坐标。 组件第一行文本的基线的 y 坐标。

此属性用于实现 baseline 约束样式,还可用于将 FormItem 的标签与 FormItem 中的控件对齐。

document 对与此组件关联的文档对象的引用。 对与此组件关联的文档对象的引用。文档对象是位于 Flex 应用程序、MXML 组件或 ActionScript 组件层次结构顶层的 Object。 enabled 组件是否可以接受用户交互。 组件是否可以接受用户交互。将 enabled 属性设置为 false 后,某些组件仍会响应鼠标交互,如 mouseOver。因此,要完全禁用 UIComponent,您应该将 mouseEnabled 属性的值也设置为 false。如果将容器的 enabled 属性设置为 false,则 Flex 会使该容器及其所有子项的颜色变暗,并阻止用户向容器及其所有子项输入内容。 explicitHeight 在组件坐标中显式指定的组件高度(以像素为单位)。 在组件坐标中显式指定的组件高度(以像素为单位)。如果没有显式指定的高度,则值为 NaNmx.core.UIComponent.explicitHeightexplicitMaxHeight 在组件坐标中指定组件最大高度的数字(以像素为单位)。 在组件坐标中指定组件最大高度的数字(以像素为单位)。 mx.core.UIComponent.explicitMaxHeightexplicitMaxWidth 在组件坐标中指定组件最大宽度的数字(以像素为单位)。 在组件坐标中指定组件最大宽度的数字(以像素为单位)。 mx.core.UIComponent.explicitMaxWidthexplicitMinHeight 在组件坐标中指定组件最小高度的数字(以像素为单位)。 在组件坐标中指定组件最小高度的数字(以像素为单位)。 mx.core.UIComponent.explicitMinHeightexplicitMinWidth 在组件坐标中指定组件最小宽度的数字(以像素为单位)。 在组件坐标中指定组件最小宽度的数字(以像素为单位)。 mx.core.UIComponent.explicitMinWidthexplicitWidth 在组件坐标中显式指定的组件宽度(以像素为单位)。 在组件坐标中显式指定的组件宽度(以像素为单位)。如果没有显式指定的宽度,则值为 NaNmx.core.UIComponent.explicitWidthfocusPane 在组件中共享并用作绘制焦点指示符的叠加层的单个 Sprite 对象。 在组件中共享并用作绘制焦点指示符的叠加层的单个 Sprite 对象。如果组件的父项具有焦点,则这些组件共享此对象;如果该组件实现了 IFocusManagerComponent 接口,则不共享此对象。 mx.core.UIComponent.focusPaneincludeInLayout isPopUp maxHeight 在组件坐标中指定组件最大高度的数字(以像素为单位)。 在组件坐标中指定组件最大高度的数字(以像素为单位)。 mx.core.UIComponent.maxHeightmaxWidth 在组件坐标中指定组件最大宽度的数字(以像素为单位)。 在组件坐标中指定组件最大宽度的数字(以像素为单位)。 mx.core.UIComponent.maxWidthmeasuredMinHeight measuredMinWidth minHeight 在组件坐标中指定组件最小高度的数字(以像素为单位)。 在组件坐标中指定组件最小高度的数字(以像素为单位)。 mx.core.UIComponent.minHeightminWidth 在组件坐标中指定组件最小宽度的数字(以像素为单位)。 在组件坐标中指定组件最小宽度的数字(以像素为单位)。 mx.core.UIComponent.minWidthowner percentHeight 以组件父项大小百分比的方式指定组件高度的数字。 以组件父项大小百分比的方式指定组件高度的数字。允许的值为从 0 到 100。 percentWidth 以组件父项大小百分比形式指定其宽度的数字。 以组件父项大小百分比形式指定其宽度的数字。允许的值为从 0 到 100。 systemManager 对此组件的 SystemManager 对象的引用。mx.managers:ISystemManager 对此组件的 SystemManager 对象的引用。 tweeningProperties 由 EffectManager 使用。 由 EffectManager 使用。如果组件不使用 EffectManager 执行 Tween,则返回非空值。
FlexTextField FlexTextField 是 Player 的 TextField 类的子类,同时也是 UITextField 的 superclass。flash.text:TextField FlexTextField 是 Player 的 TextField 类的子类,同时也是 UITextField 的 superclass。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexTextField 构造函数。 构造函数。

name 属性设置为 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。

此字符串由对象的类名称和应用程序内的唯一整数连接而成,如 "UITextField18"

flash.display.DisplayObject.namemx.utils.NameUtil.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(如 "MyApp0.HBox5.UITextField18")由 mx.utils.NameUtils 类的 displayObjectToString() 方法从对象及其后代的 name 属性中生成。 flash.display.DisplayObject.namemx.utils.NameUtil.displayObjectToString()
IRawChildrenContainer IRawChildrenContainer 接口定义能够返回一个给出其所有子项的 IChildList 的容器的 API。 IRawChildrenContainer 接口定义能够返回一个给出其所有子项的 IChildList 的容器的 API。已覆盖 IChildList API(如 numChildrenaddChild() 方法)的任何容器都应实现此接口,以便仅管理其实际子项的子集。例如,mx.core.Container 类包含一组独立于非内容子项的内容子项,如边框、标题栏和分隔符。 mx.core.ContainerrawChildren 返回一个给出所有子项的 IChildList。mx.core:IChildList 返回一个给出所有子项的 IChildList。FocusManager 使用它来查找仍然可以接收焦点的非内容子项(例如 ControlBars 中的组件)。 DragSource DragSource 类中包含正被拖动的数据。Object DragSource 类中包含正被拖动的数据。数据可以采用多种格式,具体取决于启动拖动的控件的类型。

每种数据格式都使用一个字符串进行标识。hasFormat() 方法用于确定对象是否包含使用相应格式的数据。dataForFormat() 方法用于检索指定格式的数据。

可以使用 addData() 方法直接添加数据,也可以使用 addHandler() 方法间接添加数据。addHandler() 方法会注册一个回调,请求该数据时将调用此回调。添加非本机格式的数据可能需要进行大量计算或转换,此时该方法就非常有用。例如,如果您具有原始声音数据,则可以添加 MP3 格式处理程序。仅当请求 MP3 数据时才执行 MP3 转换。

DragSource 构造函数。 构造函数。 addData 向拖动源添加数据和相应的格式 String。data用于指定拖动数据的对象。这可以是任何对象,如,String、DataProvider,等等。 format字符串,用于指定一个标签来描述此数据格式。 向拖动源添加数据和相应的格式 String。此方法不返回值。 addHandler 添加一个处理函数,当请求指定格式的数据时将调用此处理函数。handler一个函数,用于指定请求数据时需要调用的处理函数。此函数必须返回指定格式的数据。 format用于指定此数据的格式的字符串。 添加一个处理函数,当请求指定格式的数据时将调用此处理函数。当拖动大量数据时,此函数非常有用。仅当请求数据时才调用该处理函数。此方法不返回值。 dataForFormat 检索指定格式的数据。包含所请求格式的数据的 Object。如果拖动多个项目,则返回值是一个 Array。对于基于 List 的控件,返回值始终为 Array,即使其中只包含一个项目也是如此。 format字符串,用于指定一个标签来描述要返回的数据的格式。如果要用 addData() 方法创建自定义放置目标,则此字符串可以是自定义值。

基于 List 的控件对于 format 参数有预定义的值。如果启动拖动操作的控件是 Tree,则格式为 "treeItems",且项目实现 ITreeDataProvider 接口。对于本身即支持拖放的所有其他基于 List 的控件,格式为 "items",且项目实现 IDataProvider 接口。

检索指定格式的数据。如果此数据是使用 addData() 方法添加的,则可以直接返回此数据。如果此数据是使用 addHandler() 方法添加的,则需调用处理程序函数来返回此数据。
hasFormat 如果数据源中包含请求的格式,则返回 true;否则,返回 false。如果数据源中包含所请求的格式,则返回 trueformat字符串,用于指定一个标签来描述此数据的格式。 如果数据源中包含所请求的格式,则返回 true;否则,返回 falseformats 包含拖动数据的格式,以字符串 Array 的形式表示。 包含拖动数据的格式,以字符串 Array 的形式表示。使用 addData()addHandler() 方法设置此属性。默认值取决于添加到 DragSource 对象的数据。
InteractionMode InteractionMode 类为 UIComponent 类的 interactionMode 属性定义值。Object InteractionMode 类为 UIComponent 类的 interactionMode 属性定义值。 mx.core.Containermx.core.ScrollControlBaseMOUSE 该组件的主要交互模式是通过 mouse。mouse 该组件的主要交互模式是通过 mouse。 TOUCH 该组件的主要交互模式是通过 touch。touch 该组件的主要交互模式是通过 touch。 FlexBitmap FlexBitmap 是 Player 的 Bitmap 类的子类。flash.display:Bitmap FlexBitmap 是 Player 的 Bitmap 类的子类。它将覆盖 toString() 方法以返回一个字符串,用于指示对象在应用程序的 DisplayObject 层次结构中所处的位置。 FlexBitmap 构造函数。bitmapDatanull位图数据。 pixelSnappingauto位图是否与最近的像素对齐。 smoothingfalse在缩放时是否对位图进行平滑处理。 构造函数。

name 属性设置为 mx.utils.NameUtils 类的 createUniqueName() 方法返回的字符串。此字符串是与在应用程序内具有唯一性的整数相连接的对象的类的名称,如 "FlexBitmap12"

flash.display.DisplayObject.namemx.utils.NameUtil.createUniqueName()
toString 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。指示此对象在应用程序的 DisplayObject 层次结构中所处的位置的 String。 返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。此字符串(例如 "MyApp0.HBox5.FlexBitmap12")由 mx.utils.NameUtils 类的 displayObjectToString() 方法根据对象及其始祖的 name 属性构建。 flash.display.DisplayObject.namemx.utils.NameUtil.displayObjectToString()
IMXMLObject IMXMLObject 接口定义 API,非可视组件必须实现这些 API 才能正确使用 MXML 编译器。 IMXMLObject 接口定义 API,非可视组件必须实现这些 API 才能正确使用 MXML 编译器。当前,只支持 initialized() 方法。 initialized 创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。document创建此对象的 MXML 文档。 iddocument 用来引用此对象的标识符。如果此对象是 document 上的深层属性,则 id 为 null。 创建实现对象且初始化在 MXML 标签上指定的所有组件属性后调用。 RuntimeDPIProvider RuntimeDPIProvider 类提供相似设备 DPI 值到预定义 DPI 类的默认映射。Object RuntimeDPIProvider 类提供相似设备 DPI 值到预定义 DPI 类的默认映射。应用程序可能将其 runtimeDPIProvider 属性设置为 RuntimeDPIProvider 的子类,以覆盖 Flex 的默认映射。覆盖 Flex 的默认映射会导致在应用程序的自动缩放行为中做出更改。

对于错误报告其 screenDPI 的设备和可能在不同 DPI 类中更好进行缩放的设备,通常才需要覆盖 Flex 的默认映射。

Flex 的默认映射为: 160 DPI<200 DPI240 DPI>=200 DPI 和 <280 DPI320 DPI>=280 DPI

RuntimeDPIProvider 的子类应仅依赖于运行时 API,且不应依赖于特定于 Flex 框架的任意类(除 mx.core.DPIClassification 之外)。

mx.core.DPIClassificationspark.components.Application.applicationDPIRuntimeDPIProvider 构造函数。 构造函数。 runtimeDPI 通过将其 flash.system.Capabilities.screenDPI 映射至 mx.core.DPIClassification 中几个 DPI 值之一,返回当前设备的运行时 DPI。 通过将其 flash.system.Capabilities.screenDPI 映射至 mx.core.DPIClassification 中几个 DPI 值之一,返回当前设备的运行时 DPI。一些设备可以具有略有不同的 DPI 值且 Flex 将其映射至几个 DPI 类。当针对特定 DPI 而编写的应用程序通过缩放适应于当前方法时,Flex 使用该方法计算当前 DPI 值。 flash.system.Capabilitiesmx.core.DPIClassification
FlexVersion 此类控制框架的向后兼容性。Object 此类控制框架的向后兼容性。对于每个新版本,框架的某些方面(如行为、样式和默认设置)都会发生变化,这可能会对您的应用程序产生影响。通过设置 compatibilityVersion 属性,可以将行为更改为与先前版本匹配。这是一个“全局”标志;您不能对一个组件或一组组件应用一个版本,而对另一个组件或另一组组件应用另一版本。 CURRENT_VERSION Flex SDK 的当前发布版本,编码为 uint。0x04060000 Flex SDK 的当前发布版本,编码为 uint。 VERSION_2_0_1 Flex 2.0.1 的 compatibilityVersion 值,使用数字编码为 uint。0x02000001 Flex 2.0.1 的 compatibilityVersion 值,使用数字编码为 uint。代码可以将此常量与 compatibilityVersion 进行比较,以实现版本特定的行为。 VERSION_2_0 Flex 2.0 的 compatibilityVersion 值,使用数字编码为 uint。0x02000000 Flex 2.0 的 compatibilityVersion 值,使用数字编码为 uint。代码可以将此常量与 compatibilityVersion 进行比较,以实现版本特定的行为。 VERSION_3_0 Flex 3.0 的 compatibilityVersion 值,使用数字编码为 uint。0x03000000 Flex 3.0 的 compatibilityVersion 值,使用数字编码为 uint。代码可以将此常量与 compatibilityVersion 进行比较,以实现版本特定的行为。 VERSION_4_0 Flex 4.0 的 compatibilityVersion 值,使用数字编码为 uint。0x04000000 Flex 4.0 的 compatibilityVersion 值,使用数字编码为 uint。代码可以将此常量与 compatibilityVersion 进行比较,以实现版本特定的行为。 VERSION_4_5 Flex 4.5 的 compatibilityVersion 值,使用数字编码为 uint。0x04050000 Flex 4.5 的 compatibilityVersion 值,使用数字编码为 uint。代码可以将此常量与 compatibilityVersion 进行比较,以实现版本特定的行为。 VERSION_4_6 Flex 4.6 的 compatibilityVersion 值,使用数字编码为 uint。0x04060000 Flex 4.6 的 compatibilityVersion 值,使用数字编码为 uint。代码可以将此常量与 compatibilityVersion 进行比较,以实现版本特定的行为。 VERSION_ALREADY_READ 作为参数传递给 compatibilityErrorFunction() 方法的 String(如果已读取兼容版本)。versionAlreadyRead 作为参数传递给 compatibilityErrorFunction() 方法的 String(如果已读取兼容版本)。 VERSION_ALREADY_SET 作为参数传递给 compatibilityErrorFunction() 方法的 String(如果已设置兼容版本)。versionAlreadySet 作为参数传递给 compatibilityErrorFunction() 方法的 String(如果已设置兼容版本)。 compatibilityErrorFunction 当多次设置兼容版本或在读取后设置兼容版本时调用的函数。 当多次设置兼容版本或在读取后设置兼容版本时调用的函数。如果未设置此函数,SDK 将引发错误。如果已设置此函数,File 将调用此函数,但如何处理此调用由开发人员决定。当多次设置该函数时,也会调用此函数。该函数包含两个参数:第一个是 uint,即试图设置的版本;第二个是指示失败原因的字符串,可以是 VERSION_ALREADY_SETVERSION_ALREADY_READcompatibilityVersionString 兼容版本,“X.X.X”格式的字符串。 兼容版本,“X.X.X”格式的字符串。该字符串将传递给 compatibilityVersion 属性,此属性可将数字转换为便于人们理解的 String 版本,或逆向转换。 compatibilityVersion 框架维护其兼容性的当前版本。FlexVersion.CURRENT_VERSION 框架维护其兼容性的当前版本。默认为 CURRENT_VERSION。它只能更改一次;另外更改时会导致调用 compatibilityErrorFunction() 方法(如果存在),或导致运行时错误。在读取 compatibilityVersion 属性后对其进行更改会导致错误,因为依赖于该版本的代码已在运行。不会发出任何通知,系统将假定此版本只设置了一次,并且早在依赖它的版本运行之前就已进行了设置。 IToolTip IToolTip 接口定义 API,类似工具提示的组件必须实现这些 API 才能使用 ToolTipManager。mx.core:IUIComponent IToolTip 接口定义 API,类似工具提示的组件必须实现这些 API 才能使用 ToolTipManager。ToolTip 类实现了此接口。 mx.controls.ToolTipmx.managers.ToolTipManagerscreen 指定此工具提示的基本绘图表面的大小和位置的矩形。 指定此工具提示的基本绘图表面的大小和位置的矩形。 text 工具提示中显示的文本。 工具提示中显示的文本。 IStateClient2 IStateClient2 接口定义组件要支持 Flex 4 视图状态语义所必须实现的接口。flash.events:IEventDispatchermx.core:IStateClient IStateClient2 接口定义组件要支持 Flex 4 视图状态语义所必须实现的接口。 hasState 确定是否已在此 UIComponent 上定义指定的状态。是否已定义指定的状态 stateName正在检查的状态的名称。 确定是否已在此 UIComponent 上定义指定的状态。 states 视图状态对象集。 视图状态对象集。 transitions 视图状态转换集。 视图状态转换集。 DeferredInstanceFromFunction 一个延迟实例工厂,它使用生成函数创建所需对象实例。mx.core:ITransientDeferredInstanceObject 一个延迟实例工厂,它使用生成函数创建所需对象实例。应用程序使用 getInstance() 方法在首次需要对象实例时创建该实例,随后获取对该对象的引用。 DeferredInstanceFromClassDeferredInstanceFromFunction 构造函数。generator创建并返回所需对象的实例的函数。 destructornull一个可选函数,用于在调用 reset() 时清理未完成的引用。 构造函数。 getInstance 返回对所需对象的实例的引用。对象的实例。 返回对所需对象的实例的引用。如果不存在所需对象的实例,则将调用在此类的 generator 构造函数参数中指定的函数。 reset 将工厂的状态重置为最初的、未初始化的状态。 将工厂的状态重置为最初的、未初始化的状态。将清除对缓存的实例的引用。 SWFBridgeGroup SWFBridgeGroup 表示应用程序与其父级和子级进行通信所需的所有沙箱桥。mx.core:ISWFBridgeGroupflash.events:EventDispatcher SWFBridgeGroup 表示应用程序与其父级和子级进行通信所需的所有沙箱桥。 SWFBridgeGroup 构造函数。ownermx.managers:ISystemManager拥有此组的 DisplayObject。这应该是应用程序的 SystemManager。 构造函数。 addChildBridge 向舱中添加新桥。bridge与子内容进行通信的桥。 bridgeProvidermx.core:ISWFBridgeProvider加载桥所代表的内容的 DisplayObject。通常这将是 SWFLoader 类的实例。 向舱中添加新桥。 containsBridge 测试给定的桥是否为此组中的沙箱桥之一。如果找到了句柄,则为 true;否则为 falsebridge要测试的桥。 测试给定的桥是否为此组中的沙箱桥之一。 getChildBridgeProvider 获取桥的所有者以及加载子桥的 DisplayObject。加载子桥的对象。 mx.core:ISWFBridgeProviderbridge目标桥。 获取桥的所有者以及加载子桥的 DisplayObject。收到事件后如果 event.target 为桥,则此方法很有用。然后即可将桥转换为拥有的 DisplayObject。 getChildBridges 获取此组中的所有子桥。此组中所有子桥的数组。数组中的每个对象都是 IEventDispatcher 类型。 获取此组中的所有子桥。 removeChildBridge 删除子桥。bridge要删除的桥。 删除子桥。 parentBridge 如果父级位于不同的沙箱中,则允许与父级通信。 如果父级位于不同的沙箱中,则允许与父级通信。如果父级在同一个沙箱中,或者此父级是顶级根应用程序,则可以是 nullIIMESupport IIMESupport 接口定义任何支持 IME(输入法编辑器)的组件的接口。 IIMESupport 接口定义任何支持 IME(输入法编辑器)的组件的接口。IME 用于输入中文、日文和韩文字符。 flash.system.IMEenableIME 指定当该组件获得焦点时,是否应启用 IME。 指定当该组件获得焦点时,是否应启用 IME。即使组件使用 IME,它也不可能出现在所有的配置当中。例如,由于在该配置中不允许输入,如果 editablefalse,则 TextArea 会将 enableIME 设置为 false。同样,DataGrid 始终将 enableIME 设置为 false。如果 DataGrid 使用 ItemEditor,编辑器会将 enableIME 设置为 trueimeMode 组件的 IME 模式。 组件的 IME 模式。 IDeferredInstantiationUIComponent IDeferredInstantiationUIComponent 接口定义延迟实例化的组件或对象的接口。mx.core:IUIComponent IDeferredInstantiationUIComponent 接口定义延迟实例化的组件或对象的接口。 createReferenceOnParentDocument 在 IUIComponent 对象的父项文档对象上创建对此对象的 id 引用。parentDocumentmx.core:IFlexDisplayObject此 IUIComponent 对象的父项。 在 IUIComponent 对象的父项文档对象上创建对此对象的 id 引用。此函数可以对一个或多个 repeater 中的象创建多维引用,如 b[2][4]。如果索引为 null,它将创建一个简单的非 Array 引用。 deleteReferenceOnParentDocument 在 IUIComponent 对象的父项文档对象上删除对此对象的 id 引用。parentDocumentmx.core:IFlexDisplayObject此 IUIComponent 对象的父项。 在 IUIComponent 对象的父项文档对象上删除对此对象的 id 引用。此函数可以对一个或多个 Repeater 中的对象删除多维引用,如 b[2][4]。如果索引为 null,它将删除简单的非 Array 引用。 executeBindings recursefalse以递归方式为此组件的子项执行绑定。 registerEffects 对于每个效果事件,注册 EffectManager 作为其中一个事件侦听器。effects效果名称的字符串 Array。 对于每个效果事件,注册 EffectManager 作为其中一个事件侦听器。 cachePolicy descriptor mx.core:UIComponentDescriptor id cacheHeuristic IFontContextComponent 允许组件支持字体上下文属性。 允许组件支持字体上下文属性。当向显示列表添加子项时,框架就会在组件上设置此属性。对于可创建包含嵌入字体的 flash.text.TextField 对象的组件,字体上下文非常重要。如果尚未使用 Font.registerFont() 注册嵌入字体,则仅当嵌入字体是在嵌入字体上下文中创建的时,TextField 对象才能使用嵌入字体。此接口支持跟踪组件的字体上下文。 fontContext 为此组件提供字体上下文的模块工厂。mx.core:IFlexModuleFactory 为此组件提供字体上下文的模块工厂。 ISWFBridgeGroup 沙箱桥组是代表此应用程序可以与之通信的应用程序的一组桥。flash.events:IEventDispatcher 沙箱桥组是代表此应用程序可以与之通信的应用程序的一组桥。此应用程序无法与组中的其他应用程序共享内存(即无权访问这些应用程序),而是要使用桥与这些应用程序通信。 addChildBridge 向舱中添加新桥。bridge与子内容进行通信的桥。 bridgeProvidermx.core:ISWFBridgeProvider加载桥所代表的内容的 DisplayObject。通常这将是 SWFLoader 类的实例。 向舱中添加新桥。 containsBridge 测试给定的桥是否为此组中的沙箱桥之一。如果找到了句柄,则为 true;否则为 falsebridge要测试的桥。 测试给定的桥是否为此组中的沙箱桥之一。 getChildBridgeProvider 获取桥的所有者以及加载子桥的 DisplayObject。加载子桥的对象。 mx.core:ISWFBridgeProviderbridge目标桥。 获取桥的所有者以及加载子桥的 DisplayObject。收到事件后如果 event.target 为桥,则此方法很有用。然后即可将桥转换为拥有的 DisplayObject。 getChildBridges 获取此组中的所有子桥。此组中所有子桥的数组。数组中的每个对象都是 IEventDispatcher 类型。 获取此组中的所有子桥。 removeChildBridge 删除子桥。bridge要删除的桥。 删除子桥。 parentBridge 用于与此组的父应用程序进行通信的桥。 用于与此组的父应用程序进行通信的桥。 ILayoutElement ILayoutElement 接口主要由布局类用于查询 GroupBase 容器的元素并确定其大小和位置。flash.events:IEventDispatcher ILayoutElement 接口主要由布局类用于查询 GroupBase 容器的元素并确定其大小和位置。 getBoundsXAtSize 按指定的元素大小,返回元素边界的 x 坐标。按指定的元素大小,元素边界的 x 坐标。 width元素的界限宽度,或要使用首选宽度的 NaN。 height元素的界限高度,或要使用首选高度的 NaN。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 x 坐标。边框位于元素的父坐标空间中,并基于指定的边界大小、布局位置和布局转换矩阵进行计算。 按指定的元素大小,返回元素边界的 x 坐标。

如果将元素大小调整为特定尺寸,则此方法通常在调用 measure() 方法期间由布局使用,以预测该元素将来的位置。

setLayoutBoundsSize()getLayoutPositionX()getLayoutMatrix()getLayoutMatrix3D()
getBoundsYAtSize 按指定的元素大小,返回元素边界的 y 坐标。按指定的元素大小,元素边界的 y 坐标。 width元素的界限宽度,或要使用首选宽度的 NaN。 height元素的界限高度,或要使用首选高度的 NaN。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 y 坐标。边框位于元素的父坐标空间中,并基于指定的边界大小、布局位置和布局转换矩阵进行计算。 按指定的元素大小,返回元素边界的 y 坐标。如果将元素大小调整为特定尺寸,则此方法通常在调用 measure() 期间由布局使用,以预测该元素将来的位置。 setLayoutBoundsSize()getLayoutPositionY()getLayoutMatrix()getLayoutMatrix3D()getLayoutBoundsHeight 返回元素的布局高度。元素的布局高度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的布局大小和布局转换矩阵进行计算。 返回元素的布局高度。这是元素在屏幕上进行绘制时所用的大小。 getLayoutWidth()getLayoutMatrix()getLayoutMatrix3D()getLayoutBoundsWidth 返回元素的布局宽度。元素的布局宽度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的布局大小和布局转换矩阵进行计算。 返回元素的布局宽度。这是元素在屏幕上进行绘制时所用的大小。 getLayoutHeight()getLayoutMatrix()getLayoutMatrix3D()getLayoutBoundsX 返回元素在屏幕上进行绘制时所用的 x 坐标。元素在屏幕上进行绘制时所用的 x 坐标。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 x 坐标。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 返回元素在屏幕上进行绘制时所用的 x 坐标。 getLayoutPositionY()getLayoutMatrix()getLayoutMatrix3D()getLayoutBoundsY 返回元素在屏幕上进行绘制时所用的 y 坐标。元素在屏幕上进行绘制时所用的 y 坐标。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素边框左上角的 y 坐标。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 返回元素在屏幕上进行绘制时所用的 y 坐标。 getLayoutPositionX()getLayoutMatrix()getLayoutMatrix3D()getLayoutMatrix3D 返回此元素的布局转换 Matrix3D。此元素的布局转换 Matrix3D。不要直接修改返回值,请调用 setLayoutMatrix() 方法。 返回此元素的布局转换 Matrix3D。

此矩阵通常由组件的转换属性定义,例如,xyzrotationXrotationYrotationZscaleXscaleYscaleZtransformXtransformY。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets 属性。

getLayoutMatrix()setLayoutMatrix()setLayoutMatrix3D()
getLayoutMatrix 返回用于相对于其同级组件计算组件的布局的转换矩阵。此元素的布局转换 Matrix。不要直接修改返回值;请调用 setLayoutMatrix() 方法。 返回用于相对于其同级组件计算组件的布局的转换矩阵。

此矩阵通常由组件的 2D 属性(如 xyrotationscaleXscaleYtransformXtransformY)定义。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets 属性。

setLayoutMatrix()getLayoutMatrix3D()setLayoutMatrix3D()
getMaxBoundsHeight 返回元素的最大高度。元素的最大高度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框高度。边框位于元素的父坐标空间中,并基于元素的最大大小和布局转换矩阵进行计算。 返回元素的最大高度。 getMaxWidth()getLayoutMatrix()getLayoutMatrix3D()getMaxBoundsWidth 返回元素的最大宽度。元素的最大宽度。 postLayoutTransformtruepostLayoutTransform 为 true 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的最大大小和布局转换矩阵进行计算。 返回元素的最大宽度。 getMaxHeight()getLayoutMatrix()getLayoutMatrix3D()getMinBoundsHeight 返回元素的最小高度。元素的最大高度。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框高度。边框位于元素的父坐标空间中,并基于元素的最小大小和布局转换矩阵进行计算。 返回元素的最小高度。 getMinWidth()getLayoutMatrix()getLayoutMatrix3D()getMinBoundsWidth 返回元素的最小宽度。元素的最大宽度。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的最小大小和布局转换矩阵进行计算。 返回元素的最小宽度。 getMinHeight()getLayoutMatrix()getLayoutMatrix3D()getPreferredBoundsHeight 返回元素的首选高度。返回元素的首选高度。首选高度通常基于默认元素大小和任何显式覆盖。对于 UIComponent,该值与 getExplicitOrMeasuredHeight() 方法所返回的值相同。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框高度。边框位于元素的父坐标空间中,并基于元素的首选大小和布局转换矩阵进行计算。 返回元素的首选高度。 getPreferredWidth()getLayoutMatrix()getLayoutMatrix3D()getPreferredBoundsWidth 返回元素的首选宽度。返回元素的首选宽度。首选宽度通常基于默认元素大小和任何显式覆盖。对于 UIComponent,该值与 getExplicitOrMeasuredWidth() 方法所返回的值相同。 postLayoutTransformtruepostLayoutTransformtrue 时,该方法会返回元素的边框宽度。边框位于元素的父坐标空间中,并基于元素的首选大小和布局转换矩阵进行计算。 返回元素的首选宽度。 getPreferredHeight()getLayoutMatrix()getLayoutMatrix3D()setLayoutBoundsPosition 设置元素在屏幕上进行绘制时所用的坐标。x边框左上角的 X 坐标。 y边框左上角的 Y 坐标。 postLayoutTransformtruepostLayoutTransformtrue 时,元素的定位方式为:其边框的左上角为 (x, y)。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 设置元素在屏幕上进行绘制时所用的坐标。

请注意,调用 setLayoutBoundSize() 方法会影响布局位置,因此请在调用 setLayoutBoundSize() 之后再调用 setLayoutBoundPosition()

setLayoutSize()getLayoutMatrix()getLayoutMatrix3D()
setLayoutBoundsSize 设置元素的布局大小。width元素的布局宽度。 height元素的布局高度。 postLayoutTransformtrue如果 postLayoutTransform 为 true,则指定的大小就是元素的边框的大小。边框位于元素的父坐标空间中,并基于元素的布局大小、布局位置和布局转换矩阵进行计算。 设置元素的布局大小。这是元素在屏幕上进行绘制时所用的大小。

如果 width 和/或 height 参数尚未指定 (NaN),则 Flex 会将该元素的布局大小设置为首选宽度和/或首选高度。

请注意,调用 setLayoutBoundSize() 方法会影响布局位置,因此请在调用 setLayoutBoundSize() 之后再调用 setLayoutBoundPosition()

setLayoutPosition()getLayoutMatrix()getLayoutMatrix3D()
setLayoutMatrix3D 设置用于计算组件相对于其同级组件的布局大小和位置的转换 Matrix3D。value矩阵。 invalidateLayout设置为 true,将使父容器重新布局其子代。通常情况下,会将 true 传递给 invalidateLayout() 方法。 设置用于计算组件相对于其同级组件的布局大小和位置的转换 Matrix3D。

此矩阵通常由组件的转换属性定义,例如,xyzrotationXrotationYrotationZscaleXscaleYscaleZtransformXtransformY。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets 属性。

请注意,在父坐标中计算时,布局 Matrix3D 是在 getPreferredSize()getMinSize()getMaxSize()getLayoutSize() 中进行分解的;在父坐标和子坐标中计算时,布局 Matrix3D 是在 getLayoutPosition() 中进行分解的。计算转换矩阵的布局通常会显式调用此方法,并使用子坐标中的大小。调用此方法的布局会将 false 传递给 invalidateLayout() 方法,这样不会触发后续的布局传递。

getLayoutMatrix()setLayoutMatrix()getLayoutMatrix3D()
setLayoutMatrix 设置用于相对于其同级组件计算组件的布局大小和位置的转换 Matrix。value矩阵。 invalidateLayout设置为 true,将使父容器重新布局其子代。通常情况下,会将 true 传递给 invalidateLayout() 方法。 设置用于相对于其同级组件计算组件的布局大小和位置的转换 Matrix。

此矩阵通常由组件的 2D 属性(如 xyrotationscaleXscaleYtransformXtransformY)定义。某些组件可以具有其他转换属性,这些属性在布局矩阵的顶层上应用,以确定最终计算的矩阵。例如,UIComponent 可定义 offsets

请注意,在父坐标中计算时,布局 Matrix 是在 getPreferredSize()getMinSize()getMaxSize()getLayoutSize() 方法中进行分解的;在父坐标和子坐标中计算时,布局 Matrix 是在 getLayoutPosition() 中进行分解的。计算转换矩阵的布局通常会显式调用此方法,并使用子坐标中的大小。调用此方法的布局会将 false 传递给 invalidateLayout() 方法,这样不会触发后续的布局传递。

getLayoutMatrix()getLayoutMatrix3D()setLayoutMatrix3D()
transformAround 用于更新转换的旋转、缩放和平移的一种实用程序方法,同时保留某个特定点,该点是在组件自己的坐标空间中指定的,且在父项的坐标空间中是固定的。transformCenter在组件自己的坐标中用于相对于其父项保持固定的点。 scalenull转换的缩放的新值。 rotationnull转换的旋转的新值 translationnull转换的平移的新值。 postLayoutScalenull转换的布局后缩放的新值。 postLayoutRotationnull转换的布局后旋转的新值。 postLayoutTranslationnull转换的布局后平移的新值。 invalidateLayouttrue如果为 true,则父容器的大小和显示将无效。调用此方法的布局会传递 false,这样不会触发后续的布局传递。 用于更新转换的旋转、缩放和平移的一种实用程序方法,同时保留某个特定点,该点是在组件自己的坐标空间中指定的,且在父项的坐标空间中是固定的。此函数将指定提供的旋转值、缩放值和平移值,然后根据需要更新 x/y/z 属性以保持转换中心固定。 baselinePosition 组件第一行文本的基线的 y 坐标。 组件第一行文本的基线的 y 坐标。

此属性用于实现 baseline 约束样式,还可用于将 FormItem 的标签与 FormItem 中的控件对齐。

各组件应覆盖此属性。

baseline 从锚点目标到控件的基线位置的垂直距离(以像素为单位)。null 从锚点目标到控件的基线位置的垂直距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域的上边缘。在具有高级约束的布局中,目标可以是一个约束行。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“row1:10”。

bottom 从组件的下边缘到锚点目标的下边缘的垂直距离(以像素为单位)。null 从组件的下边缘到锚点目标的下边缘的垂直距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束行。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“row1:10”。

hasLayoutMatrix3D 如果元素具有 3D 矩阵,则为 true。 如果元素具有 3D 矩阵,则为 true

使用 hasLayoutMatrix3D,而不是调用和检查 getLayoutMatrix3D() 的返回值,因为该方法会返回一个有效的矩阵,即使元素是 2D 的也是如此。

horizontalCenter 从组件中心到锚点目标的内容区域中心的水平距离(以像素为单位)。null 从组件中心到锚点目标的内容区域中心的水平距离(以像素为单位)。

默认锚点目标是容器本身。

在具有高级约束的布局中,锚点目标可以是一个约束列。那么,内容区域就是前一列(或容器侧)与目标列之间的空间。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“constraintColumnId:value”将属性值设置为一个字符串,如“col1:10”。

includeInLayout left 从组件的左边缘到锚点目标的左边缘的水平距离(以像素为单位)。null 从组件的左边缘到锚点目标的左边缘的水平距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束列。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“col1:10”。

percentHeight 以组件父代大小百分比的方式指定组件高度。NaN 以组件父代大小百分比的方式指定组件高度。允许的值为 0-100。设置 heightexplicitHeight 属性会将此属性重置为 NaN。

仅当先前已设置此属性时,此属性才会返回数值;它不会以百分比形式反映组件的确切大小。

percentWidth 以组件父代大小百分比的方式指定组件宽度。NaN 以组件父代大小百分比的方式指定组件宽度。允许的值为 0-100。设置 widthexplicitWidth 属性会将此属性重置为 NaN。

仅当先前已设置此属性时,此属性才会返回数值;它不会以百分比形式反映组件的确切大小。

right 从组件的右边缘到锚点目标的右边缘的水平距离(以像素为单位)。null 从组件的右边缘到锚点目标的右边缘的水平距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束列。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“col1:10”。

top 从组件的上边缘到锚点目标的上边缘的垂直距离(以像素为单位)。null 从组件的上边缘到锚点目标的上边缘的垂直距离(以像素为单位)。

默认情况下,锚点目标是容器的内容区域。在具有高级约束的布局中,目标可以是一个约束行。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“anchorTargetName:value”将属性值设置为一个字符串,如“row1:10”。

verticalCenter 从组件中心到锚点目标的内容区域中心的垂直距离(以像素为单位)。null 从组件中心到锚点目标的内容区域中心的垂直距离(以像素为单位)。

默认锚点目标是容器本身。

在具有高级约束的布局中,锚点目标可以是一个约束行。那么,内容区域就是前一行(或容器侧)与目标行之间的空间。

将属性设置为数字或数字字符串(如“10”)会指定使用默认锚点目标。

要指定锚点目标,请使用格式“constraintColumnId:value”将属性值设置为一个字符串,如“row1:10”。

ContainerCreationPolicy ContainerCreationPolicy 类定义 Container 类的 creationPolicy 属性的常量值。Object ContainerCreationPolicy 类定义 Container 类的 creationPolicy 属性的常量值。 mx.core.Container.creationPolicyALL 立即创建所有后代。all 立即创建所有后代。

由于此 creationPolicy 会增加应用程序的启动时间,因此请避免使用它。通常,最好不要在启动时创建用户无法看到的组件。如果打算使用此策略,以便在启动时将数据“推到”隐藏的组件中,您应该设计您的应用程序,以便通过数据绑定或 initialize 处理函数将数据存储在“推入”这些数据后生成的数据变量和组件中。

AUTO 延迟创建部分或所有后代,直至需要它们。auto 延迟创建部分或所有后代,直至需要它们。

例如,如果导航器容器(如 TabNavigator)具有此 creationPolicy,则它将立即创建其所有子项以及最初选择的子项的后代。但是,它将等到用户导航至其他子项才会创建这些子项的后代。

NONE 不创建任何子项。none 不创建任何子项。

如果使用此 creationPolicy,则开发人员负责通过在父容器上调用 createComponentsFromDescriptors() 以编程方式从 UIComponentDescriptor 创建子项。

QUEUED 向创建队列中添加此容器。queued 向创建队列中添加此容器。自 Flex 4.0 以来,已弃用。
UITextField UITextField 类定义许多 Flex 组件用来显示文本的组件。mx.automation:IAutomationObjectmx.core:IIMESupportmx.core:IFlexModulemx.core:IInvalidatingmx.styles:ISimpleStyleClientmx.managers:IToolTipManagerClientmx.core:IUITextFieldmx.core:FlexTextField UITextField 类定义许多 Flex 组件用来显示文本的组件。例如,mx.controls.Button 控件使用 UITextField 组件定义 Button 控件的标签区域。

UITextField 类扩展 flash.text.TextField 类以支持 Flex 所需的其他功能,如 CSS 样式、无效/度量/布局、启用/禁用、工具提示和支持输入中文、日文和韩文文本的 IME(输入法编辑器)。

警告:如果 UITextField 继承 layoutDirection="rtl",它将修改其自己的 transform.matrix 以在本地复原默认坐标系。

flash.text.TextFieldmx.core.UITextFormatUITextField 构造函数。 构造函数。 getExplicitOrMeasuredHeight 一个 Number,在已定义的情况下是 explicitHeight,在未定义的情况下是 measuredHeight。 getExplicitOrMeasuredWidth 一个 Number,在已定义的情况下是 explicitWidth,在未定义的情况下是 measuredWidth。 getStyle 样式值。 styleProp样式属性的名称。 getTextStyles 返回给出此 UITextField 对象的字符格式设置信息的 TextFormat 对象。TextFormat 对象。 返回给出此 UITextField 对象的字符格式设置信息的 TextFormat 对象。 flash.text.TextFormatgetUITextFormat 返回包含此组件的格式设置信息的 UITextFormat 对象。包含此组件格式设置信息的对象。 mx.core:UITextFormat 返回包含此组件的格式设置信息的 UITextFormat 对象。此方法与 flash.text.TextField 类的 getTextFormat() 方法类似,但它返回 UITextFormat 对象而不是 TextFormat 对象。

UITextFormat 类扩展 TextFormat 类以添加文本测量方法 measureText()measureHTMLText()

mx.core.UITextFormatflash.text.TextField
initialize 初始化此组件。 初始化此组件。

IUIComponent 接口要求使用此方法,但实际上,它不会对 UITextField 执行任何操作。

invalidateDisplayList invalidateProperties invalidateSize move x组件在其父项内的左侧位置。 y组件在其父项内的顶部位置。 owns 如果该子项是此对象的子项或者属于该对象,则返回 true。如果该子项是 UITextField 对象的子项或者属于该对象,则返回 truechild子 DisplayObject。 如果该子项是此对象的子项或者属于该对象,则返回 true所有者parentChanged 为 UITextField 对象分配父项时调用此函数。p此 UITextField 对象的父项。 为 UITextField 对象分配父项时调用此函数。您通常无需调用此方法。 replayAutomatableEvent 重放指定的事件。如果重放成功,则为 trueevent要重放的事件。 重放指定的事件。如果已在 superclass 中定义默认重放行为,组件作者可能应调用 super.replayAutomatableEvent。 setActualSize w对象的宽度。 h对象的高度。 setColor 设置文本的字体颜色。color新的字体颜色。 设置文本的字体颜色。 setFocus setStyle 不执行任何操作。styleProp样式属性的名称。 value样式的新值。 不执行任何操作。UITextField 不能包含嵌入式样式。 setVisible 设置此 UITextField 对象的 visible 属性。visible将其设置为 true 可使此 UITextField 可见;将其设置为 false 可使它不可见。 noEventfalse将其设置为 true 可禁止当您更改可见性时生成事件。 设置 UITextField 对象的 visible 属性。 styleChanged styleProp样式属性的名称;如果此组件的所有样式均已更改,则为 null。 truncateToFit 截断文本使其在水平方向适合为控件定义的区域,并向文本追加省略号 (...)。如果此文本需要截断,则返回 truetruncationIndicatornull截断后追加的文本。如果传递 null,将使用可本地化的字符串,如 "..." 截断文本使其在水平方向适合为控件定义的区域,并向文本追加省略号 (...)。 validateNow automationDelegate 正在处理相关自动化功能的委托对象。 正在处理相关自动化功能的委托对象。 automationEnabled 如果此组件启用了自动化,则为 true;否则为 false。 如果此组件启用了自动化,则为 true;否则为 false。 automationName 可用作此对象的标识符的名称。 可用作此对象的标识符的名称。 automationOwner 用于自动化目的的此组件的所有者。 用于自动化目的的此组件的所有者。 automationParent 用于自动化目的的此组件的父级。 用于自动化目的的此组件的父级。 automationValue 此值通常对应于对象的经呈示的外观,当对象在应用中以可视方式显示时,此值使标识符与该对象相关联。 此值通常对应于对象的经呈示的外观,当对象在应用中以可视方式显示时,此值使标识符与该对象相关联。 automationVisible 如果此组件对于自动化是可见的,则为 true;否则为 false。 如果此组件对于自动化是可见的,则为 true;否则为 false。 baselinePosition 首行文本基线的 y 坐标。 首行文本基线的 y 坐标。 className 此实例的类的名称,如“DataGridItemRenderer”。 此实例的类的名称,如 "DataGridItemRenderer"

此字符串不包括包名称。如果您还需要包名称,请调用 flash.utils 包中的 getQualifiedClassName() 方法。将返回一个字符串,如 "mx.controls.dataGridClasses::DataGridItemRenderer"

document 对与此 UITextField 对象关联的文档对象的引用。 对与此 UITextField 对象关联的文档对象的引用。文档对象是位于 Flex 应用程序、MXML 组件或 AS 组件层次结构顶层的 Object。 enableIME 一个标志,用于指示当组件获得焦点时是否应启用 IME。 一个标志,用于指示当组件获得焦点时是否应启用 IME。 enabled 一个指示是否启用组件的布尔值。true 一个指示是否启用组件的布尔值。此属性只影响文本的颜色,而不影响 UITextField 的可编辑性。要控制可编辑性,请使用 flash.text.TextField.type 属性。 flash.text.TextFieldexplicitHeight explicitMaxHeight 采用组件坐标指定组件最大高度(以像素为单位)的数字(如果设置了 maxHeight 属性)。NaN 采用组件坐标指定组件最大高度(以像素为单位)的数字(如果设置了 maxHeight 属性)。由于 maxHeight 为只读,因此此方法返回 NaN。必须覆盖此方法并添加 setter 才能使用此属性。 mx.core.UIComponent.explicitMaxHeightexplicitMaxWidth 采用组件坐标指定组件最大宽度(以像素为单位)的数字(如果设置了 maxWidth 属性)。NaN 采用组件坐标指定组件最大宽度(以像素为单位)的数字(如果设置了 maxWidth 属性)。由于 maxWidth 为只读,因此此方法返回 NaN。必须覆盖此方法并添加 setter 才能使用此属性。 mx.core.UIComponent.explicitMaxWidthexplicitMinHeight explicitMinWidth explicitWidth focusPane 在组件中共享并用作绘制焦点指示符的叠加层的单个 Sprite 对象。 在组件中共享并用作绘制焦点指示符的叠加层的单个 Sprite 对象。如果组件的父项具有焦点,则这些组件共享此对象;如果该组件实现了 IFocusManagerComponent 接口,则不共享此对象。 ignorePadding 如果为 true,paddingLeft 和 paddingRight 样式不会在组件文本周围添加空间。true 如果为 truepaddingLeftpaddingRight 样式不会在组件文本周围添加空间。 imeMode 指定 IME(输入法编辑器)模式。null 指定 IME(输入法编辑器)模式。IME 使用户能够用中文、日文和韩文输入文本。当控件获得焦点时,Flex 设置指定的 IME 模式;当该控件失去焦点时,则将其设置回为先前的值。

flash.system.IMEConversionMode 类定义此属性的有效值的常量。您还可以指定 null 不指定任何 IME 模式。

flash.system.IMEConversionMode
includeInLayout inheritingStyles 此 UITextField 继承样式链的起始位置。 此 UITextField 继承样式链的起始位置。getStyle() 方法访问 inheritingStyles[styleName] 以搜索整个原型链接的链。此对象由 initProtoChain() 方法设置。通常情况下,您不需要直接访问此属性。 initialized 一个标志,确定对象是否已通过三个阶段的布局验证(假定需要完成所有阶段)。 一个标志,确定对象是否已通过三个阶段的布局验证(假定需要完成所有阶段)。 isPopUp maxHeight maxWidth measuredHeight measuredMinHeight measuredMinWidth measuredWidth minHeight minWidth moduleFactory 用于在正确的 SWF 上下文中创建 TextFields 的 moduleFactory。mx.core:IFlexModuleFactory 用于在正确的 SWF 上下文中创建 TextFields 的 moduleFactory。这是嵌入字体起作用而必需的项目。 nestLevel nonInheritingStyles 此 UITextField 非继承样式链的起始位置。 此 UITextField 非继承样式链的起始位置。getStyle() 方法访问 nonInheritingStyles[styleName] 方法以搜索整个原型链接的链。此对象由 initProtoChain() 方法设置。通常情况下,您不需要直接访问此属性。 nonZeroTextHeight 与 textHeight 不同,此方法将返回一个非零值,即使文本为空。 与 textHeight 不同,此方法将返回一个非零值,即使文本为空。在这种情况下,它返回文本不为空的情况下 textHeight 的值。 owner 默认情况下,设置为此对象的父容器。 默认情况下,设置为此对象的父容器。但是,如果此对象是由其父项弹出的子组件(如 ComboBox 控件的下拉列表),则所有者是弹出该对象的组件。

此属性并非由 Flex 管理,而由各个组件管理。因此,如果使用 PopUpManger.createPopUp()PopUpManger.addPopUp() 方法弹出一个子组件,则应该将该子组件的 owner 属性设置为弹出它的组件。

默认值为 parent 属性的值。

parent 此组件的父容器或组件。 此组件的父容器或组件。 percentHeight percentWidth processedDescriptors createChildren() 方法创建任意内部组件子项后设置为 true。 createChildren() 方法创建任意内部组件子项后设置为 truestyleName systemManager mx.managers:ISystemManager toolTip tweeningProperties updateCompletePendingFlag 一个标志,确定对象是否已通过三个阶段的布局验证(假定需要完成所有阶段)。 一个标志,确定对象是否已通过三个阶段的布局验证(假定需要完成所有阶段)。
MovieClipAsset MovieClipAsset 是用于表示 movieclip 元件的 flash.display.MovieClip 类的子类,这些元件是从 SWF 文件(由 Flash 生成)嵌入到 Flex 应用程序中的。mx.core:IFlexAssetmx.core:IFlexDisplayObjectmx.core:IBordermx.core:FlexMovieClip MovieClipAsset 是用于表示 movieclip 元件的 flash.display.MovieClip 类的子类,这些元件是从 SWF 文件(由 Flash 生成)嵌入到 Flex 应用程序中的。它实现 IFlexDisplayObject 接口,使 MovieClip 可以显示在 Image 控件中,或者用作容器背景或组件外观。

要嵌入的 MovieClip 必须是 SWF 文件中的一个 movieclip 元件。使用嵌入的 movieclip 的常见原因是您已在 Flash 中创建了一个基于帧的动画,并且希望在 Flex 应用程序中使用它。MXML 编译器自动生成一个类,该类会扩展 MovieClipAsset 以呈示嵌入的动画。

编写 Flex 应用程序时,通常不必直接使用 MovieClipAsset 类。例如,通过编写以下代码,您可以将 movieclip 动画用作应用程序的背景图像:

  <mx:Application backgroundImage="@Embed(source='Assets.swf', symbol='BackgroundAnimation')"/>

或者

  <fx:Style>
      @namespace mx "library://ns.adobe.com/flex/mx"
      mx|Application {
          backgroundImage: Embed(source="Assets.swf", symbol="BackgroundAnimation")
      }
  <fx:Style/>

不必了解 MXML 编译器已为您创建了 MovieClipAsset 的子类。

不过,了解在 ActionScript 级别发生的操作可能会有用。要在 ActionScript 中嵌入 movieclip,需要声明 Class 类型的变量,并对其应用 [Embed] 元数据。例如:

  [Bindable]
  [Embed(source="Assets.swf", symbol="BackgroundAnimation")]
  private var backgroundAnimationClass:Class;

MXML 编译器会发现 Assets.swf 中的 BackgroundAnimation 元件是一个影片剪辑,自动生成 MovieClipAsset 类的子类以呈示该剪辑,并将变量设置为引用此自动生成的类。然后,您可以使用此类引用通过 new 运算符创建 MovieClipAsset 的实例,还可以对其使用 MovieClip 类的 API:

  var backgroundAnimation:MovieClipAsset =
      MovieClipAsset(new backgroundAnimationClass());
  var n:int = backgroundAnimation.totalFrames;

但是,您极少需要自己创建 MovieClipAsset 实例,因为 image-related 属性和样式可以设置为 image-producing 类,且组件会根据需要创建实例。例如,要将应用程序背景设置为此动画,只需编写以下内容:

  <mx:Application backgroundImage="{backgroundAnimationClass}"/>
MovieClipAsset 构造函数。 构造函数。 move 将此对象移动到指定的 x 和 y 坐标。x此对象的新 x 位置。 y此对象的新 y 位置。 将此对象移动到指定的 x 和 y 坐标。 setActualSize 设置此对象的实际大小。newWidth此对象的新宽度。 newHeight此对象的新高度。 设置此对象的实际大小。

此方法主要用于实现 updateDisplayList() 方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize() 将此实际大小应用于对象。

在其他情况下,您应该设置 widthheightpercentWidthpercentHeight 属性,而非调用此方法。

borderMetrics 为具有四个属性(left、top、right 和 bottom)的边框返回 EdgeMetrics 对象。mx.core:EdgeMetrics 为具有四个属性(lefttoprightbottom)的边框返回 EdgeMetrics 对象。每个属性值等于边框其中一条边的粗细(以像素为单位)。 measuredHeight 此对象的测量高度。 此对象的测量高度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

measuredWidth 此对象的测量宽度。 此对象的测量宽度。

通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure() 方法,从而能够计算 measuredHeight

SoundAsset SoundAsset 是 flash.media.Sound 类的子类,代表您在 Flex 应用程序中嵌入的声音。mx.core:IFlexAssetflash.media:Sound SoundAsset 是 flash.media.Sound 类的子类,代表您在 Flex 应用程序中嵌入的声音。

可以嵌入 MP3 文件格式的声音。您还可以嵌入由 Flash 生成的 SWF 文件中的声音元件。在这两种情况下,MXML 编译器自动生成可扩展 SoundAsset 以代表嵌入的声音数据的类。

编写 Flex 应用程序时,您通常不必直接使用 SoundAsset 类。例如,通过编写以下代码即可嵌入 MP3 文件,然后在 SoundEffect 中使用该文件:

  <mx:SoundEffect id="beep" source="@Embed(source='Beep.mp3')"/>

不必了解 MXML 编译器已为您创建了 SoundAsset 的子类。

不过,了解在 ActionScript 级别发生的操作可能会有用。要在 ActionScript 中嵌入位图,请声明类型为 Class 的变量,并为其指定 [Embed] 元数据。例如,您可以通过以下方式嵌入 MP3 文件:

  [Bindable]
  [Embed(source="Beep.mp3")]
  private var beepClass:Class;

MXML 编译器识别出 .mp3 扩展名,将 MP3 数据转码为播放器使用的声音格式,自动生成 SoundAsset 类的子类,并将您的变量设置为对此自动生成类的引用。然后,您可以使用此类引用通过 new 运算符创建 SoundAsset 实例,还可以在这些实例上使用 Sound 类的 API:

    var beepSound:SoundAsset = SoundAsset(new beepClass());
    beepSound.play();

但是,您很少需要自己创建 SoundAsset 实例,因为可以直接将 sound-related 属性和样式设置为 sound-producing 类,之后组件将根据需要创建声音实例。例如,要使用 SoundEffect 播放此声音,则可以将 SoundEffect 的 source 属性设置为 beepClass。在 MXML 中,您可以按照以下方法执行此操作:

  <mx:SoundEffect id="beepEffect" source="{beepClass}"/>
SoundAsset 构造函数。 构造函数。
ApplicationDomainTarget ApplicationDomainTarget 类为 RSLData 类的 applicationDomainTarget 属性定义可能的值。Object ApplicationDomainTarget 类为 RSLData 类的 applicationDomainTarget 属性定义可能的值。每个应用程序域目标指定一个相对的应用程序域,并在运行时解析该域。 mx.core.RSLDataCURRENT 当前模块工厂的应用程序域。current 当前模块工厂的应用程序域。 DEFAULT RSL 加载的默认行为是尽可能将 RSL 加载到父模块工厂链的较高位置。default RSL 加载的默认行为是尽可能将 RSL 加载到父模块工厂链的较高位置。要将 RSL 加载到父模块工厂,该模块工厂必须使用在编译器选项中指定的 RSL 进行了编译。如果父模块工厂未使用该 RSL 进行了编译,则该 RSL 将加载到加载 RSL 的模块工厂的应用程序域中。 PARENT 父模块工厂的应用程序域。parent 父模块工厂的应用程序域。 TOP_LEVEL 顶级模块工厂的应用程序域。top-level 顶级模块工厂的应用程序域。 IFlexModuleFactory IFlexModuleFactory 接口提供引导 Flex 应用程序和动态加载的模块时应该使用的约定。 IFlexModuleFactory 接口提供引导 Flex 应用程序和动态加载的模块时应该使用的约定。

分派 complete 事件之后,立即调用 info() 方法是合法的。

当可安全调用 create() 方法时,功能良好的模块将分派 ready 事件。

addPreloadedRSL 将 RSL 添加到 preloadedRSLs 列表。loaderInfo已加载的 RSL 的 loaderInfo。 rslRSL 的配置信息。RSLData 的矢量。数组中的第一个元素为主 RSL。其余元素为故障转移 RSL。 将 RSL 添加到 preloadedRSLs 列表。子模块工厂将 RSL 加载到该模块工厂的应用程序域中时会调用此方法。

您无需直接调用此方法。子模块工厂将 RSL 加载到该模块工厂的应用程序域中时会调用此方法。

allowDomain 为与此 IFlexModuleFactory 关联的 SWF 以及与此 IFlexModuleFactory 预加载的 RSL 关联的所有 SWF 调用 Security.allowDomain() 方法。domains一个或多个字符串或者 URLRequest 对象,它们可命名一些您希望允许从中进行访问的域。可以指定特殊域“*”,以允许从所有域进行访问。 为与此 IFlexModuleFactory 关联的 SWF 以及与此 IFlexModuleFactory 预加载的 RSL 关联的所有 SWF 调用 Security.allowDomain() 方法。默认情况下,此调用后加载的 RSL 所允许的域与之前调用此方法所允许的域相同。该行为由 allowDomainsInNewRSLs 属性控制。 flash.system.Security.allowDomain()allowInsecureDomain 为与此 IFlexModuleFactory 关联的 SWF 以及与此 IFlexModuleFactory 预加载的 RSL 关联的所有 SWF 调用 Security.allowInsecureDomain() 方法。domains一个或多个字符串或者 URLRequest 对象,它们可命名一些您希望允许从中进行访问的域。可以指定特殊域“*”,以允许从所有域进行访问。 为与此 IFlexModuleFactory 关联的 SWF 以及与此 IFlexModuleFactory 预加载的 RSL 关联的所有 SWF 调用 Security.allowInsecureDomain() 方法。默认情况下,此调用后加载的 RSL 所允许的域与之前调用此方法所允许的域相同。该行为由 allowInsecureDomainsInNewRSLs 属性控制。 flash.system.Security.allowInsecureDomain()callInContext 一种用于调用 IFlexModuleFactory 上下文中的方法的方法。 该函数返回的任何内容(如果返回任何内容)。 fn要调用的函数或方法。 thisArg该函数的 this 指针。 argArray该函数的参数。 returnstrue如果为 true,则该函数会返回一个值。 一种用于调用 IFlexModuleFactory 上下文中的方法的方法。 Function.applycreate factory 方法,要求定义的实例是模块已知的。模块实例,或 nullparameters可选参数列表。您可以传递任何数目的参数,这些参数将存储在名为 parameters 的 Array 中。 factory 方法,要求定义的实例是模块已知的。

您可以提供可选参数集,以便构建工厂根据输入内容更改它们创建的内容。传递 null 指示,如果可能的话,创建默认的定义。

getImplementation 获取接口的实现。接口的实现。 interfaceName接口。 获取接口的实现。与 Singleton.getInstance 方法相似,但需要通过 IFlexModuleFactory 执行。 info 返回包含模块已知的静态数据的键/值对块。包含键/值对的对象。通常,此对象包含由此工厂创建的模块的相关信息;例如:
      return {"description": "This module returns 42."};
      
返回的对象中的其他常见值包括:
  • fonts:嵌入字体列表。
  • rsls:运行时共享库列表。
  • mixins:启动时初始化的类列表。
返回包含模块已知的静态数据的键/值对块。此方法始终成功,但是可以返回空对象。
registerImplementation 注册接口的实现。interfaceName接口。 impl实现。 注册接口的实现。与 Singleton.registerClass 方法相似,但需要通过 IFlexModuleFactory 执行,并且采用实例而不是类。 allowDomainsInNewRSLs 控制调用 allowDomain() 所允许的域是否也被调用后加载的 RSL 允许。true 控制调用 allowDomain() 所允许的域是否也被调用后加载的 RSL 允许。其它 RSL 可能会由子应用程序或模块加载到此模块工厂中。 allowInsecureDomainsInNewRSLs 控制调用 allowInsecureDomain() 所允许的域是否也被调用后加载的 RSL 允许。true 控制调用 allowInsecureDomain() 所允许的域是否也被调用后加载的 RSL 允许。其它 RSL 可能会由子应用程序或模块添加至此模板工厂中。 preloadedRSLs 启动应用程序之前该 SystemManager 或 FlexModuleFactory 加载的 RSL。 启动应用程序之前该 SystemManager 或 FlexModuleFactory 加载的 RSL。该字典中可能还包含被其它模块或子应用程序加载到该模块工厂的应用程序域中的 RSL。子模块工厂添加新的字典条目时,拥有该字典的模块工厂将分派 RSLEvent.RSL_ADD_PRELOADED 事件。预加载的 RSL 信息存储在词典中。该键为 RSL 的 LoaderInfo。该值为 RSLData 的矢量,其中第一个元素是主 RSL,其余元素为故障转移 RSL。
FlexGlobals 包含通用于同一 ApplicationDomain 内的所有应用程序的变量的类。Object 包含通用于同一 ApplicationDomain 内的所有应用程序的变量的类。 topLevelApplication 在 ApplicationDomain 中运行的第一个应用程序是顶层应用程序。 在 ApplicationDomain 中运行的第一个应用程序是顶层应用程序。在顶层应用程序的构造函数中,将此属性设置为对顶层应用程序的引用。每个 ApplicationDomain 都有其自己的 topLevelApplicationIToggleButton IToggleButton 接口是一个标记接口,用于指示组件用作可切换的按钮。 IToggleButton 接口是一个标记接口,用于指示组件用作可切换的按钮。它主要由框架的默认按钮逻辑用作过滤器。此接口由旧 MX 组件使用。 ComponentDescriptor ComponentDescriptor 是 UIComponentDescriptor 类的基类,后者封装您在 MXML 标签中为可视组件实例指定的信息。Object ComponentDescriptor 是 UIComponentDescriptor 类的基类,后者封装您在 MXML 标签中为可视组件实例指定的信息。在 Flex 中,不可视组件需要区别对待并且没有描述符;但在将来版本中,可能也会对其使用 ComponentDescriptor 基类。

MXML 文件中的大多数标签描述 UIComponent 对象树。例如,<mx:Application> 标签代表 UIComponent 对象,并且其子容器和控件均是 UIComponent 对象。

MXML 编译器将所有这些 MXML 标签均编译为 UIComponentDescriptor 实例。确切地说,MXML 编译器自动生成 ActionScript 数据结构,即 UIComponentDescriptor 对象树。

在运行时,Container 类的 createComponentsFromDescriptors() 方法使用容器的 childDescriptors 数组中 UIComponentDescriptor 对象中的信息创建实际 UIComponent 对象,这些对象是容器的子级以及子级的子级。根据容器的 creationPolicy 属性的值,会在应用程序启动时,组件的某部分将要转为可见状态或应用程序开发人员手动调用 createComponentsFromDescriptors() 方法时,创建子级。

您通常不需要亲自创建 ComponentDescriptor 或 UIComponentDescriptor 实例;您可以通过 Container 类的 childDescriptors 数组访问 MXML 编译器自动生成的此类实例。

mx.core.UIComponentDescriptormx.core.Container.childDescriptorsmx.core.Container.creationPolicymx.core.Container.createComponentsFromDescriptors()ComponentDescriptor 构造函数。descriptorProperties包含 ComponentDescriptor 对象属性的名称/值对的 Object,这些属性包括其 typeidpropertiesFactoryevents 等。 构造函数。 invalidateProperties 使缓存的 properties 属性失效。 使缓存的 properties 属性失效。下次读取 properties 属性时,将使用由 propertiesFactory 属性值指定的函数重新生成这些属性。 toString 返回字符串“ComponentDescriptor_”以及 id 属性的值。字符串“ComponentDescriptor_”以及 id 属性的值。 返回字符串“ComponentDescriptor_”以及 id 属性的值。 document 对将在其中创建组件的文档 Object 的引用。 对将在其中创建组件的文档 Object 的引用。 mx.core.IUIComponent.documentevents MXML 中所指定的包含组件事件处理程序的名称/值对的 Object。 MXML 中所指定的包含组件事件处理程序的名称/值对的 Object。

例如,如果编写

      <mx:DataGrid id="dg" initialize="fetchData(); initDataGrid();"  change="changeHandler(event);"/>
      

则描述符的 events 属性即为以下 Object

      { initialize: "__dg_initialize", change: "__dg_change" }
      

如果没有为组件指定 MXML 事件处理程序,则 event 属性为 null

字符串 "__dg_initialize""__dg_change" 是 MXML 编译器自动生成的事件处理函数方法的名称。这些方法的主体中包含您指定为事件属性值的 ActionScript 语句。例如,自动生成的 initialize 处理函数是

      public function __dg_initialize(event:mx.events.FlexEvent):void
      {
          fetchData();
          initDataGrid();
      }
      

您不应认为自动生成的事件处理程序始终由名称指定;在新版本的 Flex 中可能会有所改变。

Container 方法 createComponentsFromDescriptors() 可借助此属性使用 addEventListener() 方法来注册自动生成的事件处理程序。

id MXML 中指定的组件的标识符。 MXML 中指定的组件的标识符。

例如,如果编写

      <mx:TextInput id="firstName" text="Enter your first name here"/>
      

则描述符的 id 属性即为 String "firstName"

如果没有为组件指定 MXML id,则 id 属性为 null

id 属性的值将成为 MXML 文档对象中一个公用变量的名称,由 MXML 编译器自动生成。此变量的值是对使用此描述符创建的 UIComponent 对象的引用。例如,正因为如此,您才可以从包含此 TextInput 实例的文档中的任何位置引用 TextInput 控件的 text 属性作为 firstName.text

如果已指定一个 id,并且是非空字符串,还会成为 DisplayObject 对象的 name。如果未指定 id 或其值为空,则 DisplayObject 对象的 name 将保留自动生成的字符串(如 "Button3"),它由 NameUtil.createUniqueName() 方法返回。name 在生成由 toString() 方法返回的字符串时使用。还可用于通过调用 getChildByName() 从组件的父级中查找组件。

flash.display.DisplayObject.name
propertiesFactory 一个 Function,用于返回 MXML 中指定的包含组件属性的名称/值对的 Object。 一个 Function,用于返回 MXML 中指定的包含组件属性的名称/值对的 Object。

例如,如果编写

      <mx:TextInput width="150" text="Hello">
      

则描述符的 propertiesFactory 属性即为以下 Function:

      function():Object { return { width: 150, text: "Hello" }; }
      

如果没有为组件指定 MXML 属性,则 propertiesFactory 属性为 null。在此情形下,组件将使用默认属性值。

propertyFactory 是一个可返回 Object 的 Function 而不是一个实际 Object,这是由于 ComponentDescriptor 对象树是允许逐渐“展开”的。如果描述符树中关于文档的所有描述符都在启动时创建,则启动时间就会延长。

properties 属性返回一个缓存 Object,此对象由该工厂函数生成。

注意:事件处理程序(如 click="doSomething();")位于 events Object 中,而不位于 properties Object 中。

属性
type MXML 中指定的组件的 Class。 MXML 中指定的组件的 Class。

例如,如果编写

      <mx:TextInput/>
      

则描述符的 type 属性即为类 mx.controls.TextInput。

对于由 MXML 编译器创建的 ComponentDescriptor 对象而言,此属性始终非 null,因为每个 MXML 标签都有一个标签名,如 mx:TextInput。

MXML 标签与其对应类之间的映射由 XML 命名空间和与此命名空间关联的“清单”文件(如果存在)确定。例如,由 mx: 前缀表示的标准 Flex 命名空间 http://www.adobe.com/2006/mxml 与清单文件 mxml-manifest.xml 关联(在 flex-config.xml 文件中),此文件具有以下标签

      <component id="TextInput" class="mx.controls.TextInput"/>
      

可将标签名 mx:TextInput 映射到 Class mx.controls.TextInput。请注意,使用清单文件允许将一个 XML 命名空间中的组件映射到多个 ActionScript 包中的类。

properties MXML 中指定的包含组件属性的名称/值对的 Object。 MXML 中指定的包含组件属性的名称/值对的 Object。

例如,如果编写

      <mx:TextInput width="150" text="Hello"/>
      

则描述符的 properties 属性即为以下 Object

      { width: 150, text: "Hello" }
      

如果没有为组件指定 MXML 属性,则 properties 属性为 null。在此情形下,组件将使用默认属性值。

此 Object 通过调用由 propertiesFactory 属性指定的函数生成,然后缓存以供后续访问。然而,当 Repeater 使用同一描述符生成多个组件实例时,应为每个组件实例生成 properties Object 的一个全新副本,使它们不用共享作为 Array 或 Object 引用的属性值。Repeater 通过在描述符上调用 invalidateProperties() 方法来完成此操作。

propertiesFactoryinvalidateProperties()