Flex中AdvancedDataGrid的用法示例介绍
编程学习 2021-07-05 11:32www.dzhlxh.cn编程入门
AdvancedDataGrid实现双表头表格,在某些情况下还是比较实用的,狼蚁网站SEO优化有个不错的示例,感兴趣的朋友可以参考下
AdvancedDataGrid实现双表头表格
(1)源码
AdvanceGrid.mxml
<?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%">
<s:layout>
<s:HorizontalLayout verticalAlign="middle" horizontalAlign="center"/>
</s:layout>
<fx:Declarations>
</fx:Declarations>
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
.adv{
font-size:12;
font-weight:bold;
color:FFFFFF;
}
</fx:Style>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var flatArray:ArrayCollection = new ArrayCollection([
{school:"星艺高中",one:"5645",two:"4512",three:"4545",man:"8656",woman:"6545",Chinese:"98",Maths:"78",English:"98"},
{school:"充实高中",one:"5665",two:"4512",three:"6563",man:"8565",woman:"6541",Chinese:"67",Maths:"86",English:"65"},
{school:"理论一中",one:"6545",two:"6562",three:"5623",man:"8754",woman:"6214",Chinese:"87",Maths:"78",English:"86"},
{school:"护名高中",one:"5623",two:"2356",three:"4512",man:"8574",woman:"6354",Chinese:"98",Maths:"84",English:"69"},
{school:"竹艺高中",one:"4545",two:"7545",three:"5623",man:"8547",woman:"6352",Chinese:"94",Maths:"80",English:"87"},
{school:"精髓高中",one:"6565",two:"4512",three:"4512",man:"8354",woman:"6854",Chinese:"90",Maths:"68",English:"97"}
]);
]]>
</fx:Script>
<mx:VBox width="100%" height="100%" paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10">
<mx:AdvancedDataGrid id="adg" dataProvider="{flatArray}" designViewDataType="flat" width="100%" height="100%"
paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10" verticalAlign="middle"
textAlign="center" headerSeparatorSkin="mx.skins.ProgrammaticSkin" headerColors="[0xB0C4DE,0xB0C4DE]"
headerStyleName="adv">
<mx:groupedColumns>
<mx:AdvancedDataGridColumn headerText="学校" dataField="school"/>
<mx:AdvancedDataGridColumnGroup headerText="班级">
<mx:AdvancedDataGridColumn headerText="高一" dataField="one"/>
<mx:AdvancedDataGridColumn headerText="高二" dataField="two"/>
<mx:AdvancedDataGridColumn headerText="高三" dataField="three"/>
</mx:AdvancedDataGridColumnGroup>
<mx:AdvancedDataGridColumnGroup headerText="性别">
<mx:AdvancedDataGridColumn headerText="男" dataField="man"/>
<mx:AdvancedDataGridColumn headerText="女" dataField="woman"/>
</mx:AdvancedDataGridColumnGroup>
<mx:AdvancedDataGridColumnGroup headerText="课程">
<mx:AdvancedDataGridColumn headerText="语文" dataField="Chinese"/>
<mx:AdvancedDataGridColumn headerText="数学" dataField="Maths"/>
<mx:AdvancedDataGridColumn headerText="英语" dataField="English"/>
</mx:AdvancedDataGridColumnGroup>
</mx:groupedColumns>
</mx:AdvancedDataGrid>
</mx:VBox>
</s:Application>
(2)显示结果
(1)源码
AdvanceGrid.mxml
代码如下:
<?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%">
<s:layout>
<s:HorizontalLayout verticalAlign="middle" horizontalAlign="center"/>
</s:layout>
<fx:Declarations>
</fx:Declarations>
<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
.adv{
font-size:12;
font-weight:bold;
color:FFFFFF;
}
</fx:Style>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var flatArray:ArrayCollection = new ArrayCollection([
{school:"星艺高中",one:"5645",two:"4512",three:"4545",man:"8656",woman:"6545",Chinese:"98",Maths:"78",English:"98"},
{school:"充实高中",one:"5665",two:"4512",three:"6563",man:"8565",woman:"6541",Chinese:"67",Maths:"86",English:"65"},
{school:"理论一中",one:"6545",two:"6562",three:"5623",man:"8754",woman:"6214",Chinese:"87",Maths:"78",English:"86"},
{school:"护名高中",one:"5623",two:"2356",three:"4512",man:"8574",woman:"6354",Chinese:"98",Maths:"84",English:"69"},
{school:"竹艺高中",one:"4545",two:"7545",three:"5623",man:"8547",woman:"6352",Chinese:"94",Maths:"80",English:"87"},
{school:"精髓高中",one:"6565",two:"4512",three:"4512",man:"8354",woman:"6854",Chinese:"90",Maths:"68",English:"97"}
]);
]]>
</fx:Script>
<mx:VBox width="100%" height="100%" paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10">
<mx:AdvancedDataGrid id="adg" dataProvider="{flatArray}" designViewDataType="flat" width="100%" height="100%"
paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10" verticalAlign="middle"
textAlign="center" headerSeparatorSkin="mx.skins.ProgrammaticSkin" headerColors="[0xB0C4DE,0xB0C4DE]"
headerStyleName="adv">
<mx:groupedColumns>
<mx:AdvancedDataGridColumn headerText="学校" dataField="school"/>
<mx:AdvancedDataGridColumnGroup headerText="班级">
<mx:AdvancedDataGridColumn headerText="高一" dataField="one"/>
<mx:AdvancedDataGridColumn headerText="高二" dataField="two"/>
<mx:AdvancedDataGridColumn headerText="高三" dataField="three"/>
</mx:AdvancedDataGridColumnGroup>
<mx:AdvancedDataGridColumnGroup headerText="性别">
<mx:AdvancedDataGridColumn headerText="男" dataField="man"/>
<mx:AdvancedDataGridColumn headerText="女" dataField="woman"/>
</mx:AdvancedDataGridColumnGroup>
<mx:AdvancedDataGridColumnGroup headerText="课程">
<mx:AdvancedDataGridColumn headerText="语文" dataField="Chinese"/>
<mx:AdvancedDataGridColumn headerText="数学" dataField="Maths"/>
<mx:AdvancedDataGridColumn headerText="英语" dataField="English"/>
</mx:AdvancedDataGridColumnGroup>
</mx:groupedColumns>
</mx:AdvancedDataGrid>
</mx:VBox>
</s:Application>
(2)显示结果