Im followin flex-Code:
Auch sichtbar bei: http://www.cse.epicenterlabs.com/checkBoxDg/checkBoxDg.html
1. eine Zeile in Datagrid hinzu, indem Sie auf „AddRow“ klicken
2. Klicken Sie auf „CheckDg“, um die Werte aller Kontrollkästchen zu sehen
- es zeigt „checkBox57“ oder „checkBox64“ oder eine ähnliche Zeichenfolge
3. Nun, „wählen“ die Checkbox in der ersten Reihe.
4. Klicken Sie erneut auf „CheckDg“
-e Show true
Also, zunächst dp.getItemAt (i) .date gibt eine CheckBox
und später gibt er den „ausgewählten“ Wert der CheckBox?
Warum dieser Unterschied?
<?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>