【问题标题】:how to assign an "id" to a RadioButtonGroup using actionscript?如何使用动作脚本将“id”分配给 RadioButtonGroup?
【发布时间】:2011-01-05 07:03:46
【问题描述】:
假设我有一个
var rdGroup:RadioButtonGroup = new RadioButtonGroup();
我如何分配 id
rdGroup.id = "id_RdGroup";
我怎样才能在 VBox 中添加这个组说
var vbBox:VBox = new VBox();
vbBox.addElement(rdGroup);
这东西出错了。找不到该属性 id...任何解决方案?
【问题讨论】:
标签:
apache-flex
actionscript-3
flash-builder
【解决方案1】:
id 是一个 mxml 属性,可让您定义正在创建的对象的名称。所以,或多或少,
<mx:Button id="myButton" />
和这个伪代码一样:
public var myButton:Button = new Button();
this.addChild(myButton);
MXML 定义的对象是一种快捷方式。如果您没有定义 id 属性(因为您不需要在代码中引用给定对象),它将由编译器创建,它会选择一个唯一的名称。
这就是为什么对象没有 id 属性并且您无法分配它的原因。 MXML 中的 id 是 actionscript 中变量的名称。
如果您尝试通过 String 保留多个变量的句柄,则需要以某种形式保留它们的列表,一种可能的解决方案是:
var myGroups:Object = new Object();
var rdGroup:RadioButtonGroup = new RadioButtonGroup();
myGroups["id_RdGroup"] = rdGroup;
[...]
vbBox.addElement( myGroups["id_RdGroup"]);