设置DataGrid的行和列的风格,单元格风格

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" creationComplete="application1_creationCompleteHandler()"
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
    <s:layout>
        <s:VerticalLayout horizontalAlign="center" verticalAlign="middle"/>
    </s:layout>
    <fx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;
            
            [Bindable]
            private var dp:ArrayCollection=new ArrayCollection();
            private var timer:Timer=new Timer(3000);
            protected function application1_creationCompleteHandler():void
            {
                timer.addEventListener(TimerEvent.TIMER,timerHandler);
                timer.start();
            }
            private function timerHandler(e:TimerEvent):void{
//                dp.removeAll();
                for(var i:int=0;i<=4;i++){
                    var o:Object=new Object();
                    o.id=i+1;
                    o.name="name"+(i+1).toString();
                    o.value=(Math.random()*100).toFixed(0);
                    dp.addItem(o);
                }
            }
            
            private function columnStyle(data:Object,clo:AdvancedDataGridColumn):Object{
                if(data['value']>=60){
                    return {color:0x00ff00,fontWeight:"bold"};
                }else{
                    return {color:0xcc1100,fontWeight:"bold"};
                }
                
            }
        ]]>
    </fx:Script>
    <fx:Declarations>
        <!-- 将非可视元素(例如服务、值对象)放在此处 -->
    </fx:Declarations>
    <mx:AdvancedDataGrid id="adg1" width="400" height="200" designViewDataType="flat" dataProvider="{dp}" styleFunction="columnStyle">
        <mx:columns>
            <mx:AdvancedDataGridColumn dataField="id" headerText="id"/>
            <mx:AdvancedDataGridColumn dataField="name" headerText="name"/>
            <mx:AdvancedDataGridColumn dataField="value" headerText="value"/>
        </mx:columns>
    </mx:AdvancedDataGrid>
</s:Application>

 

posted on 2012-09-11 17:07  雷、  阅读(174)  评论(0)    收藏  举报

导航