2011-05-09 46 views
0

我有一个VBox数百个复选框需要从“重置”按钮重置。如何将“p1”转换为复选框组件?重置复选框ID

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

回答

1

可能:

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

是CheckBox的家长和是复选框数。

也许更好的只是把所有的CheckBox的到一个数组,这样做:

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

第一个选项适用于我。 – Jonyang 2011-05-09 06:08:40

0

可以使用得到所有chilred方法,检查是否有孩子复选框instnace,如果是,强制转换成复选框并重置该值。

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

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

我还没有运行代码和测试了,但是我敢肯定的是,上述将强劲工作,可能有一些拼写错误,虽然,但这是解决像您这样的问题的最佳解决方案。