包 | mx.controls |
类 | public class RadioButtonGroup |
继承 | RadioButtonGroup EventDispatcher Object |
实现 | IMXMLObject |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
从 Flex 4.0 开始,Adobe 建议您使用 spark.components.RadioButtonGroup 类来替代此类。 |
RadioButtonGroup 控件定义一组 RadioButton 控件,这些控件相互排斥;因此,用户每次只能选择一个 RadioButton 控件。当可以选择在 RadioButtonGroup 中组合 RadioButton 实例时,组使您能够执行诸如在一组按钮上(而不是在每个单独的按钮上)设置单一事件处理函数等事项。
使用 <mx:RadioButtonGroup>
标签定义组名称时需要使用 id
属性。
注意,RadioButtonGroup 控件是 EventDispatcher 的子类,而不是 UIComponent 的子类,并实现 IMXMLObject 接口。所有其他 Flex 可视组件是 UIComponent 的子类,该类实现 IUIComponent 接口。RadioButtonGroup 控件在 Flex 编译器中内置了一些支持,允许将 RadioButtonGroup 控件用作 Flex 容器的子项,即使该控件没有实现 IUIComponent。所有其他容器子项必须实现 IUIComponent 接口。
因此,如果尝试将可视组件定义为实现 IMXMLObject 接口的 EventDispatcher 的子类,则不能将其用作容器的子项。
MXML 语法隐藏 MXML 语法The <mx:RadioButtonGroup>
tag inherits all of the
tag attributes of its superclass, and adds the following tag attributes:
<mx:RadioButtonGroup Properties enabled="true|false" id="No default" labelPlacement="right|left|top|bottom" Events change="No default" itemClick="No default" />
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
enabled : Boolean
确定是否允许选择。 | RadioButtonGroup | ||
labelPlacement : String
组中的每个控件的 RadioButton 标签相对于 RadioButton 图标的位置。 | RadioButtonGroup | ||
numRadioButtons : int [只读]
属于此 RadioButtonGroup 的 RadioButton 数。 | RadioButtonGroup | ||
selectedValue : Object
组中所选 RadioButton 控件的 value 属性的值(如果此值被设置为非 null 值,默认值为 null)。 | RadioButtonGroup | ||
selection : RadioButton
包含对组中当前所选 RadioButton 控件的引用。 | RadioButtonGroup |
方法 | 由以下参数定义 | ||
---|---|---|---|
RadioButtonGroup(document:IFlexDisplayObject = null)
构造函数。 | RadioButtonGroup | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将事件调度到事件流中。 | EventDispatcher | ||
返回指定索引处的 RadioButton 控件。 | RadioButtonGroup | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
IMXMLObject.initialized() 方法的实现支持延迟的实例化。 | RadioButtonGroup | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
此组中所选 RadioButton 控件的值更改时调度。 | RadioButtonGroup | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
用户在组中选择 RadioButton 控件时调度。 | RadioButtonGroup |
enabled | 属性 |
labelPlacement | 属性 |
labelPlacement:String
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
组中的每个控件的 RadioButton 标签相对于 RadioButton 图标的位置。您可以为单个控件覆盖此设置。
MXML 中的有效值为 "right"
、"left"
、"bottom"
和 "top"
。
在 ActionScript 中,可使用以下常量来设置此属性:ButtonLabelPlacement.RIGHT
、ButtonLabelPlacement.LEFT
、ButtonLabelPlacement.BOTTOM
和 ButtonLabelPlacement.TOP
。
默认值为 "right"。
此属性可用作数据绑定的源。修改此属性后,将调度 labelPlacementChanged
事件。
实现
public function get labelPlacement():String
public function set labelPlacement(value:String):void
numRadioButtons | 属性 |
selectedValue | 属性 |
selectedValue:Object
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
组中所选 RadioButton 控件的 value
属性的值(如果此值被设置为非 null
值,默认值为 null)。否则,selectedValue
是所选 RadioButton 的 label
属性的值。如果未选择任何 RadioButton,则此属性为 null
。
如果设置了 selectedValue
,则 Flex 会选择 value
或 label
属性与此值匹配的 RadioButton 控件。
默认值为 null。
此属性可用作数据绑定的源。修改此属性后,将调度 valueCommit
事件。
实现
public function get selectedValue():Object
public function set selectedValue(value:Object):void
selection | 属性 |
selection:RadioButton
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
包含对组中当前所选 RadioButton 控件的引用。您只能在 ActionScript 中访问此属性;在 MXML 中此属性不可设置。将此属性设置为 null
可取消对当前所选 RadioButton 控件的选择。
默认值为 null。
此属性可用作数据绑定的源。修改此属性后,将调度 valueCommit
事件。
实现
public function get selection():RadioButton
public function set selection(value:RadioButton):void
RadioButtonGroup | () | 构造函数 |
public function RadioButtonGroup(document:IFlexDisplayObject = null)
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
构造函数。
参数document:IFlexDisplayObject (default = null ) — 在类扩展 EventDispatcher 的简单情况下,不使用 document 参数。
|
相关 API 元素
getRadioButtonAt | () | 方法 |
public function getRadioButtonAt(index:int):RadioButton
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
返回指定索引处的 RadioButton 控件。
参数
index:int — RadioButtonGroup 控件中 RadioButton 控件的索引,其中第一个控件的索引是 0。
|
RadioButton — 指定的 RadioButton 控件。
|
initialized | () | 方法 |
change | 事件 |
flash.events.Event
属性 Event.type =
flash.events.Event.CHANGE
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
此组中所选 RadioButton 控件的值更改时调度。
Event.CHANGE
常量定义 change
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | true |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 已修改其值的对象。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
itemClick | 事件 |
mx.events.ItemClickEvent
属性 ItemClickEvent.type =
mx.events.ItemClickEvent.ITEM_CLICK
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
用户在组中选择 RadioButton 控件时调度。您也可以为各个 RadioButton 控件设置处理函数。
ItemClickEvent.ITEM_CLICK
常量可为 itemClick
事件定义事件对象的 type
属性值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
index | 单击的导航项目的索引。 |
item | 单击的导航项目在数据提供程序中的项目。 |
label | 单击的导航项目的标签。 |
relatedObject | 生成事件的子对象。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
<?xml version="1.0" encoding="utf-8"?> <!-- Simple example to demonstrate Halo RadioButtonGroup control. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import mx.controls.Alert; import mx.events.ItemClickEvent; // Event handler function to display the selected button // in a Halo Alert control. private function handleCard(evt:ItemClickEvent):void { switch (evt.currentTarget.selectedValue) { case "AmEx": Alert.show("You selected American Express"); break; case "MC": Alert.show("You selected MasterCard"); break; case "Visa": Alert.show("You selected Visa"); break; } } ]]> </fx:Script> <fx:Declarations> <mx:RadioButtonGroup id="cardtype" itemClick="handleCard(event);"/> </fx:Declarations> <s:Panel title="Halo RadioButtonGroup Control Example" width="75%" height="75%" horizontalCenter="0" verticalCenter="0"> <s:VGroup left="10" right="10" top="10" bottom="10"> <s:Label width="100%" color="blue" text="Select a type of credit card."/> <mx:RadioButton groupName="cardtype" id="americanExpress" value="AmEx" label="American Express" width="150" /> <mx:RadioButton groupName="cardtype" id="masterCard" value="MC" label="MasterCard" width="150" /> <mx:RadioButton groupName="cardtype" id="visa" value="Visa" label="Visa" width="150" /> </s:VGroup> </s:Panel> </s:Application>
Tue Jun 12 2018, 11:04 AM Z