Flex中对表格中某列的值进行数字格式化并求百分比

左手的ㄟ右手 2022-08-13 11:52 186阅读 0赞

1、问题背景

  1. 一般的,需要对表格中某列的数值进行格式化,对该数值乘以100,并保留两位小数,添加“%”

2、实现实例

[plain] view plaincopy在CODE上查看代码片派生到我的代码片

  1. <?xml version=”1.0” encoding=”utf-8”?>
  2. <s:Application xmlns:fx=”http://ns.adobe.com/mxml/2009“
  3. xmlns:s=”library://ns.adobe.com/flex/spark”
  4. xmlns:mx=”library://ns.adobe.com/flex/mx”
  5. width=”100%” height=”100%” fontSize=”12”
  6. fontFamily=”微软雅黑”>
  7. <![CDATA[
  8. import mx.collections.ArrayCollection;
  9. import mx.events.FlexEvent;
  10. [Bindable]
  11. //表格数据绑定
  12. private var gridArray:ArrayCollection = new ArrayCollection([
  13. {week:”星期一”,apple:”3676”,rate:”0.7868”},
  14. {week:”星期二”,apple:”4534”,rate:”0.65454”},
  15. {week:”星期三”,apple:”6758”,rate:”0.876454”},
  16. {week:”星期四”,apple:”9808”,rate:”0.34224”},
  17. {week:”星期五”,apple:”6567”,rate:”0.9876523”},
  18. {week:”星期六”,apple:”9000”,rate:”0.566777”},
  19. {week:”星期日”,apple:”4533”,rate:”0.988787”}
  20. ]);
  21. /**
  22. * 对表格中的比率进行格式化
  23. */
  24. private function formatDataGrid(item:Object,column:DataGridColumn):String
  25. {
  26. var tempData:Number = item.rate*100;
  27. var data:String = dataFormatter.format(tempData);
  28. return data+”%”;
  29. }
  30. ]]>
  31. <mx:VBox width=”100%” height=”100%” paddingBottom=”10” paddingLeft=”10” paddingRight=”20”
  32. paddingTop=”10” horizontalAlign=”center”>

(1)将小数乘以100

  1. var tempData:Number = item.rate\*100;

(2)对数值格式化,保留两位小数

  1. var data:String = dataFormatter.format(tempData);

(3)添加百分号

  1. return data+"%";

3、实现结果

Center

发表评论

表情:
评论列表 (有 0 条评论,186人围观)

还没有评论,来说两句吧...

相关阅读