Datagrid में फ्लेक्स चेक बॉक्स

वोट
3
followin फ्लेक्स कोड में: 
http://www.cse.epicenterlabs.com/checkBoxDg/checkBoxDg.html: इसके अलावा यहां देखा जा सकता
1. AddRow पर क्लिक करके datagrid में एक पंक्ति जोड़ें
2. सभी चेक बॉक्स के मूल्यों को देखने के लिए CheckDg पर क्लिक करें
     - यह checkBox57 या checkBox64 या कुछ इसी तरह की स्ट्रिंग से पता चलता
3. अब, पहली पंक्ति में checkbox का चयन करें।
4. फिर से पर CheckDg
    -यह शो सच

तो, शुरू में dp.getItemAt (i) .date एक चेकबॉक्स रिटर्न
और बाद में इसे चेकबॉक्स के चयनित मान देता है?
क्यों इस अंतर है?
<?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>
13/07/2009 को 18:13
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


3 जवाब

वोट
0

आप ग्रिड में चेक बॉक्स पर क्लिक करते हैं, यह आज तक क्षेत्र में लिखते हैं "सही" या "गलत", मूल चेक बॉक्स उद्देश्य यह है कि वहाँ था की जगह। मेरा मानना ​​है कि क्या itemEditors (आप एक संपादक के रूप में अपने प्रस्तुत करना उपयोग कर रहे हैं) करते हैं वे संग्रह में संबंधित घटकों से .data संपत्ति लिखना है।

13/07/2009 को 19:03
का स्रोत उपयोगकर्ता

वोट
3

आप डेटा चर लेकिन आंकड़ों के वस्तुओं आवंटित करने के लिए नहीं जा सकते। Checkbox.select संपत्ति पूर्ववर्ती कार्यों के बाद पहले और उसके बाद सही या गलत अपने चेक बॉक्स वस्तु को तैयार है। ऐसा करें

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

पुनश्च: इसके अलावा डी पी [Bindable] यह विशेषता होनी चाहिए :-)

12/04/2010 को 16:27
का स्रोत उपयोगकर्ता

वोट
0

झूठे के रूप में है कि विशेष रूप datagrid स्तंभ के लिए 'संपादन योग्य' संपत्ति सेट करें। इस समस्या को हल करेंगे

25/10/2013 को 20:23
का स्रोत उपयोगकर्ता

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