| 包 | mx.controls |
| 类 | public class RadioButtonGroup |
| 继承 | RadioButtonGroup EventDispatcher Object |
| 实现 | IMXMLObject |
<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"
/>
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | |
| enabled : Boolean 确定是否允许选择。 | RadioButtonGroup | ||
| labelPlacement : String 组中的每个控件的 RadioButton 标签相对于 RadioButton 图标的位置。 | RadioButtonGroup | ||
| numRadioButtons : int [只读 (read-only)] 属于此 RadioButtonGroup 的 RadioButton 数。 | RadioButtonGroup | ||
![]() | prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | |
| 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 | |
![]() | 检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | EventDispatcher | |
| 事件 | 摘要 | 定义方 | ||
|---|---|---|---|---|
![]() | [广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | ||
| 此组中所选 RadioButton 控件的值更改时调度。 | RadioButtonGroup | |||
![]() | [广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | ||
| 用户在组中选择 RadioButton 控件时调度。 | RadioButtonGroup | |||
| enabled | 属性 |
enabled:Boolean [读写] 确定是否允许选择。
默认值为 true.
此属性可用作数据绑定的源。修改此属性后,将调度 enabledChanged 事件。
public function get enabled():Boolean public function set enabled(value:Boolean):void| labelPlacement | 属性 |
labelPlacement:String [读写] 组中的每个控件的 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 | 属性 |
numRadioButtons:int [只读 (read-only)] 属于此 RadioButtonGroup 的 RadioButton 数。
默认值为 "undefined".
此属性可用作数据绑定的源。修改此属性后,将调度 numRadioButtonsChanged 事件。
public function get numRadioButtons():int| selectedValue | 属性 |
selectedValue:Object [读写]
组中所选 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 [读写]
包含对组中当前所选 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)构造函数。
参数document:IFlexDisplayObject (default = null) —
在类扩展 EventDispatcher 的简单情况下,不使用 document 参数。
|
另请参见
| getRadioButtonAt | () | 方法 |
public function getRadioButtonAt(index:int):RadioButton返回指定索引处的 RadioButton 控件。
参数
index:int — RadioButtonGroup 控件中 RadioButton 控件的索引,其中第一个控件的索引是 0。 |
RadioButton — 指定的 RadioButton 控件。 |
| initialized | () | 方法 |
public function initialized(document:Object, id:String):void
IMXMLObject.initialized() 方法的实现支持延迟的实例化。
参数
document:Object — 创建此对象的 MXML 文档。 | |
id:String —
文档用来引用此对象的标识符。如果此对象是文档上的深层属性,则 id 为 null。
|
另请参见
| change | 事件 |
flash.events.Eventflash.events.Event.CHANGE此组中所选 RadioButton 控件的值更改时调度。
Event.CHANGE 常量定义 change 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles
|
true
|
cancelable
|
false;没有要取消的默认行为。
|
currentTarget
| 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target
|
已修改其值的对象。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。
|
| itemClick | 事件 |
mx.events.ItemClickEventmx.events.ItemClickEvent.ITEM_CLICK用户在组中选择 RadioButton 控件时调度。您也可以为各个 RadioButton 控件设置处理函数。
ItemClickEvent.ITEM_CLICK 常数可为 itemClick 事件定义事件对象的 type 属性值。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles
| false |
cancelable
| false |
currentTarget
|
用于定义处理该事件的事件侦听器的 Object。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。
|
index
| 单击的导航项目的索引。 |
item
| 单击的导航项目在数据提供程序中的项目。 |
label
| 单击的导航项目的标签。 |
relatedObject
| 生成事件的子对象。 |
target
|
调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。
|
<?xml version="1.0"?>
<!-- Simple example to demonstrate RadioButtonGroup control. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ItemClickEvent;
// Event handler function to display the selected button
// in an Alert control.
private function handleCard(event:ItemClickEvent):void {
if (event.currentTarget.selectedValue == "AmEx") {
Alert.show("You selected American Express")
}
else {
if (event.currentTarget.selectedValue == "MC") {
Alert.show("You selected MasterCard")
}
else {
Alert.show("You selected Visa")
}
}
}
]]>
</mx:Script>
<mx:Panel title="RadioButtonGroup Control Example" height="75%" width="75%"
paddingTop="10" paddingLeft="10">
<mx:Label width="100%" color="blue"
text="Select a type of credit card."/>
<mx:RadioButtonGroup id="cardtype" itemClick="handleCard(event);"/>
<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" />
</mx:Panel>
</mx:Application>