Veri kılavuzunu Flex CheckBox

oy
3
followin esnek Kodu: 
http://www.cse.epicenterlabs.com/checkBoxDg/checkBoxDg.html: En Ayrıca görüntülenebilir
1. AddRow tıklayarak datagrid bir satır ekleyin
2. Tüm onay kutularını değerlerini görmek için CheckDg üzerine tıklayın
     - bu checkBox57 veya checkBox64 veya bazı benzer dize gösterir
3. Şimdi ilk satırda checkbox select.
4. Tıklayın tekrar CheckDg konulu
    -it şov true

Yani, başlangıçta dp.getItemAt (i) .date CheckBox döndürür
ve daha sonra CheckBox seçilmiş değerini verir?
Neden bu fark?
<?xml version=1.0 encoding=utf-8?>
<mx:Application xmlns:mx=http://www.adobe.com/2006/mxml layout=absolute viewSourceURL=srcview/index.html>
        <mx:Canvas>
        <mx:DataGrid x=69 y=119 id=dgFee editable=true dataProvider={dp}>
            <mx:columns>
            <mx:DataGridColumn headerText=Date dataField=date width=100 editable=true 
            editorDataField=selected rendererIsEditor=true>
            <mx:itemRenderer>
                <mx:Component>
                    <mx:CheckBox selected=false>
                                       </mx:CheckBox>
                        </mx:Component>
            </mx:itemRenderer>
            </mx:DataGridColumn>
                       <mx:DataGridColumn dataField=amount headerText=Amount editable=true>
                         <mx:itemEditor>
                         <mx:Component>
                                  <mx:TextInput restrict=0-9/>
                         </mx:Component>
                         </mx:itemEditor>   
                       </mx:DataGridColumn>
            </mx:columns>
        </mx:DataGrid>
        <mx:CheckBox x=130 y=54 label=Checkbox selected=true click=Alert.show(abc.selected.toString()) id=abc/>
<mx:Script>
    <![CDATA[
        import mx.controls.CheckBox;
        import mx.collections.ArrayCollection;
        import mx.controls.Alert;
        public var dp:ArrayCollection = new ArrayCollection();
        public function addRow():void
        {
          var tmp:Object = new Object();
          tmp['amount'] = 100;
          tmp['date'] = new CheckBox();
          dp.addItem(tmp);
        }
        public function delRow():void
        {
            if(dgFee.selectedIndex != -1)
            dp.removeItemAt(dgFee.selectedIndex);
        }

        public function loop1():void
        {
            for(var i:int=0;i<dp.length;i++)
            {
               Alert.show(dp.getItemAt(i).date);
            }
        }
    ]]>
</mx:Script>
                <mx:Button x=29 y=89 label=AddRow click=addRow()/>
                <mx:Button x=107 y=89 label=DelRow click=delRow()/>
                <mx:Button x=184 y=89 label=CheckDg click=loop1()/>

</mx:Canvas>    
</mx:Application>
Oluştur 13/07/2009 saat 18:13
kaynak kullanıcı
Diğer dillerde...                            


3 cevaplar

oy
0

Eğer ızgara onay kutusunu tıkladığınızda, "doğru" veya "yanlış" olduğunu orijinal CheckBox nesnesi yerine, tarih alanına yazar. Ben itemEditors (düzenleyen olarak işlemek sizin kullandığınız) onlar koleksiyona ilgili bileşenlerden .data yazma özelliği olduğunu ne inanıyoruz.

Cevap 13/07/2009 saat 19:03
kaynak kullanıcı

oy
3

Veri değişkenler ancak verilere nesneleri atamak gerekiyordu. Checkbox.select mülkiyet önceki eylemler sonra ilk ve daha sonra doğru veya yanlış da onay kutusu nesnesine ayarlanır. Bu yolu deneyin

public function addRow():void
{
  var tmp:Object = new Object();
  tmp['amount'] = 100;
  tmp['date'] = false; // not new CheckBox();
  dp.addItem(tmp);
}

Not: DP [Bağlanabilir] ile atfedilen olmalıdır :-)

Cevap 12/04/2010 saat 16:27
kaynak kullanıcı

oy
0

yanlış olarak bu belirli datagrid sütun için 'düzenlenebilir' özelliğini ayarlayın. Bu sorunu çözmek olacak

Cevap 25/10/2013 saat 20:23
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more