单选按钮 RadioButton 通常是属于某个群体的,对应的属性为 groupName ,单选按钮放置到场景中后, 会自动创建单选按钮群 RadioButtonGroup,通过下面的代码通过下面的代码可以获取对按钮群的引用:
//假设场景中的单选按钮 groupName 属性为“fontRbGrp”。
var rbGrp:RadioButtonGroup = RadioButtonGroup.getGroup("fontRbGrp");
单选按钮 可以进行单独的侦听,具有 change 和 Click 事件,但更多时候是通过 对按钮群 进行侦听,这样至少可以少写几个侦听。下面的代码建立起对 按钮群 的侦听。
rbGrp.addEventListener(MouseEvent.CLICK, rbHandler);
在侦听函数中,引用具体的单选按钮的代码如下所示:
//输出所选按钮的 实例名。
function rbHandler(event:MouseEvent):void {
trace( event.target.selection.name )
}
通过 switch 结构对按钮 名称进行区分,可以单独的指定执行某些任务,比如,根据名称的不同选择不同的字体:
switch(event.target.selection.name) {
case "smallRb":
tf.size = 14;
break;
case "largerRb":
tf.size = 18;
break;
case "largestRb":
tf.size = 24;
break;
}
上面的代码中最终是用到一个数字来表示字体的大小,对于这样的应用,可以考虑将数字放到 单选按钮的 value 属性中去,从而代码可以简化为:
tf.size = event.target.selection.value;
如果使用的是下拉列表组件,那么可以利用 data 属性来存放自己需要的数值,下面的代码演示的是对下拉列表 combox 进行侦听,并在处理函数中改变文本框的字体大小。
msgCb.addEventListener(Event.CHANGE, cbHandler);
function cbHandler(evt) {
tf.size = evt.target.selectedItem.data;
aTa.setStyle("textFormat", tf);
}
完整的代码及源文件下载:
压缩包下载