Flex中对表格某列的值进行数字格式化并求百分比添加%(Flex布局阮一峰)全程干货

随心笔谈5个月前更新 admin
208 00
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

文章摘要

本文通过Flex框架和mx库展示了如何使用Flex开发一个数据表格应用。文章详细介绍了如何在表格中绑定数据,并自定义了格式化函数以将比率字段的数值转换为百分比形式。通过mx.collections和mx.events库,实现了对数据的动态绑定和显示。代码示例中,作者展示了如何将一周七天的“星期”、“苹果”和“比率”数据以表格形式呈现,并通过自定义的`formatDataGrid`函数实现了比率的百分比格式化。文章还描述了表格的布局和样式设置,包括数据网格的宽度、高度、对齐方式等。整体来看,文章重点介绍了使用Flex和mx构建一个功能性的数据展示应用。


<?xml version=”1.0″ encoding=”utf-8″?>
<s:Application xmlns:fx=”http://ns.adobe.com/mxml/2009″
xmlns:s=”library://ns.adobe.com/flex/spark”
xmlns:mx=”library://ns.adobe.com/flex/mx”
width=”100%” height=”100%” fontSize=”12″
fontFamily=”微软雅黑”>
<s:layout>
<s:BasicLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.events.FlexEvent;

[Bindable]
//表格数据绑定
private var gridArray:ArrayCollection=new ArrayCollection([
{week:”星期一”,apple:”3676″,rate:”0.7868″},
{week:”星期二”,apple:”4534″,rate:”0.65454″},
{week:”星期三”,apple:”6758″,rate:”0.876454″},
{week:”星期四”,apple:”9808″,rate:”0.34224″},
{week:”星期五”,apple:”6567″,rate:”0.9876523″},
{week:”星期六”,apple:”9000″,rate:”0.566777″},
{week:”星期日”,apple:”4533″,rate:”0.988787″}
]);

private function formatDataGrid(item:Object,column:DataGridColumn):String
{
var tempData:Number=item.rate*100;
var data:String=dataFormatter.format(tempData);
return data+”%”;
}

]]>
</fx:Script>
<fx:Declarations>
<!–格式化数字–>
<mx:NumberFormatter id=”dataFormatter” precision=”2″ rounding=”up”/>
</fx:Declarations>

<mx:VBox width=”100%” height=”100%” paddingBottom=”10″ paddingLeft=”10″ paddingRight=”20″
paddingTop=”10″ horizontalAlign=”center”>
<mx:DataGrid id=”dataGrid” width=”100%” height=”90%” dataProvider=”{gridArray}” textAlign=”center”>
<mx:columns>
<mx:DataGridColumn headerText=”星期” dataField=”week”/>
<mx:DataGridColumn headerText=”苹果” dataField=”apple”/>
<mx:DataGridColumn headerText=”比率” dataField=”rate” labelFunction=”formatDataGrid”/>
</mx:columns>
</mx:DataGrid>

</mx:VBox>
</s:Application>

© 版权声明

相关文章