Flex AdvancedDataGrid对某列数值格式化

对面积与百分比两列的数值进行格式,保留小数点后两位数。

第1种方法是利用labelFunction指定回调函数;
第2种方法是利用itemRenderer填充数据项方法。

<?xml version="1.0" encoding="utf-8"?>
<s:Application ...

<fx:Script>
  <![CDATA[
   import mx.formatters.NumberFormatter;
   
   private function foramtNumberField(item:Object,column:Object):String{
     var numberFormatter:NumberFormatter=new NumberFormatter();
     var value:Number=item[column.dataField];
     numberFormatter.precision="2";
     return numberFormatter.format(value);
   }
   
  ]]>
</fx:Script>
 
 <mx:AdvancedDataGrid ....>
   <mx:dataProvider>
     ...
   </mx:dataProvider>
   <mx:columns>
     ...
     <mx:AdvancedDataGridColumn dataField="MianJi" headerText="面积" 
                                labelFunction="foramtNumberField" />
     
     <mx:AdvancedDataGridColumn headerText="百分比">
       <mx:itemRenderer>
         <fx:Component>
           <mx:HBox width="100%" height="100%" >
             <fx:Script>
               <![CDATA[
                 override public function set data(value:Object):void{
                     super.data=value;
                     txtBaiFen.text=Number(value.BaiFen).toFixed(2);
                 }
               ]]>
             </fx:Script>
             <s:Label id="txtBaiFen" />
           </mx:HBox>
          </fx:Component>
        </mx:itemRenderer>
      </mx:AdvancedDataGridColumn>

    </mx:columns>
  </mx:AdvancedDataGrid>
</s:Application>


 ---------------------------------------------------

对某列AdvancedDataGridColumn应用样式可以用回调函数styleFunction方法实现

function myStyleFunction(data:Object, column:AdvancedDataGridColumn):Object

data — 与正在呈示的项目相关联的数据对象;
column — 项呈示器与之相关联的 AdvancedDataGridColumn 实例;
返回值应该是样式的属性具有所需值的对象,如:{ color:0xFF0000, fontWeight:"bold" } 

<fx:Style>
   ....
   .advNumColumnStyle{
      paddingRight:10;
      textAlign:right;
      fontSize:13;
      fontFamily:Arial;
      color:#232323;
}
</fx:Style>
<fx:Script>
  <![CDATA[
   
   private function numColumnStyleFunc(data:Object,column:AdvancedDataGridColumn):Object{
	return{styleName:"advNumColumnStyle"};
        // return:{ color:0xFF0000, fontWeight:"bold" }; 

   }   
  ]]>
</fx:Script>

mx:AdvancedDataGrid控件

<mx:columns>
   ...
   <mx:AdvancedDataGridColumn dataField="面积" headerText="面积(平方米)" 
                              styleFunction="numColumnStyleFunc" />
   ...
</mx:columns>




 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值