Apache flex 将字符串转换为复选框

Apache flex 将字符串转换为复选框,apache-flex,actionscript-3,adobe,flex4,Apache Flex,Actionscript 3,Adobe,Flex4,我有一个字符串,它最终是复选框的id 我需要能够做的是从字符串访问复选框的属性 var-myCheckBox:对象; var myString:String myString=“checkbox\u 1” myCheckBox=Object(myString) 。。。然后我需要进入myCheckBox.selected和myCheckBox.label等如果您知道什么DisplayObjectContainer(例如Sprite,MovieClip)您可以使用复选框 不幸的是,如果您使用的是Fl

我有一个字符串,它最终是复选框的id

我需要能够做的是从字符串访问复选框的属性

var-myCheckBox:对象; var myString:String

myString=“checkbox\u 1”

myCheckBox=Object(myString)


。。。然后我需要进入myCheckBox.selected和myCheckBox.label等如果您知道什么
DisplayObjectContainer
(例如
Sprite
MovieClip
)您可以使用
复选框


不幸的是,如果您使用的是Flex容器(如
Group
),则没有函数
getElementByName()
。有这样一种方法,您可以编写一个循环,在所有
元素上迭代,直到遇到一个与您的名称匹配的元素。

如果您知道什么
DisplayObjectContainer
(例如
Sprite
MovieClip
),则可以使用
复选框

不幸的是,如果您使用的是Flex容器(如
Group
),则没有函数
getElementByName()
。这样,您就可以编写一个循环,循环遍历所有
元素,直到遇到一个与您的名称匹配的元素。

更简单的答案:

if(this.hasOwnProperty(myString) && this[myString] is CheckBox) {
    myCheckBox = this[myString] as CheckBox
}
这有点过度编码(因为如果as关键字不是复选框,它将返回null,您可以用更少的代码更好地处理它),但这应该可以做到。 祝你好运。

更简单的答案:

if(this.hasOwnProperty(myString) && this[myString] is CheckBox) {
    myCheckBox = this[myString] as CheckBox
}
这有点过度编码(因为如果as关键字不是复选框,它将返回null,您可以用更少的代码更好地处理它),但这应该可以做到。
祝您好运。

不需要“this.hasOwnProperty()”,因为“this[myString]”如果不可用,将返回undefined,但这是正确的答案:)+1。您还可以选中
(此中的myString&&this[myString]是复选框)
不需要“this.hasOwnProperty()”,因为“this[myString]”如果不可用,将只返回undefined,但这是正确的答案:)+1。您还可以选中
if(此中的myString&&this[myString]是复选框)