按ID重置复选框

时间:2011-05-09 05:56:47

标签: flash flex actionscript

我需要从“重置”按钮重置VBox中的数百个复选框。

如何将“p1”转换为复选框组件?

function private resetChk():void {
    CheckBox("p"+"1" as CheckBox).selected = false;
}

2 个答案:

答案 0 :(得分:1)

也许:

private function resetChk():void
{
    CheckBox(this["p"+i]).selected = false;
}

是CheckBox的父级, i 是复选框号。

最好只将所有CheckBox放入一个数组并执行:

var i:CheckBox;
for each(i in checkBoxArray)
{
    i.selected = false;
}

答案 1 :(得分:0)

您可以使用get all chilred方法,检查子项是否是复选框的instnace,如果是,则将其强制转换为复选框并重置该值。

例如假设myVBox是组件,然后执行以下操作

for each(child:DisplayObject in myVBox.getAllChildren())
{
    if(child is checkBox)
    {
       var checkBox:CheckBox = (child as Checkbox);
       checkBox.selected = false;
    }
}

我没有运行代码并经过测试,但我很确定上述内容可以正常运行,但可能存在一些错误,但这是解决像你这样的问题的最佳解决方案。

相关问题