2012-04-23 8 views
0

ボタンクリックですべてのチェックボックスの選択を解除しようとしています。私はfalseにブール変数を設定して、何も私は」の後に起こりませんクリックし、別のボタンでFlex 4のすべてのチェックボックスの選択を解除するには

<s:CheckBox selected="{allselected}" label="PT Identified" /> 
<s:CheckBox selected="{allselected}" label="Chart Reviewed"/> 
<s:CheckBox selected="{allselected}" label="H&amp;P"/> 
<s:CheckBox selected="{allselected}" label="Permit Signed"/> 

:私のチェックボックスに

[Bindable] 
public var allselected:Boolean; 

、その後:私はバインドさブールこのような変数を作成しようとしました既にチェックボックスをオンにしています。ブール変数をtrueに設定すると、すべてのチェックボックスがチェックされます。だから、私がすべてを選択したければ、それは機能します。ただし、選択したすべてのチェックボックスの選択を解除する必要があります。

チェックボックスは、タイルグループにのみ存在し、データグリッドまたはデータグループ内にはありません。私はこれを行う簡単な方法があると思いますが、私はまだそれを把握していません。どんな提案も大歓迎です。

答えて

0
public function findChild(numChilds:int, parent:Object):void 
     { 
      for (var i:int = 0; i < numChilds; i++) 
      { 
       var obj:Object = parent.getChildAt(i); 
       if(obj.hasOwnProperty('selected')) 
       { 
        if(obj.selected == true) 
        { 
         obj.selected = false; 
        } 
       } 
       if (obj is DisplayObjectContainer) 
       { 
        // search for children 
        var children:int = obj.numChildren; 
        findChild(children, obj); 
       } 
      } 
     } 

使用法:

var elems:int = checklistVgroup.numChildren; // Get the number of elements 

findChild(elems, checklistVgroup);   // Use our function 
0

私は汚れた溶液がありました。チェックボックスにidを付けて、ボタンのクリックのために次の関数を使用します。

protected function untick_clickHandler(event:MouseEvent):void{ 
      cb1.selected=false; 
      cb2.selected=false; 
      cb3.selected=false; 
     } 
+0

おかげで、あまりにも多くのチェックボックスがあります。私は解決策を見つけました: – ROSCH

関連する問題