在Flex中动态生成表格,并且表格的表头也是动态生成 
  1、源码 
 复制代码 代码如下:   <?xml version="1.0" encoding="utf-8"?>  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"  creationComplete="initHandler()"  width="100%">  <mx:Script>  <![CDATA[  import mx.events.FlexEvent;  import mx.events.ListEvent;  import mx.controls.ComboBox;  import mx.controls.DataGrid;  import mx.collections.ArrayCollection;  import mx.controls.dataGridClasses.DataGridColumn; 
  [Bindable]  //自定义数据源  private var grid:Array = [  {age:'25', sex: "男",name: "张三"},  {age:'22', sex: "女",name: "李四"},  {age:'23', sex: "男",name: "王五"},  {age:'21', sex: "女",name: "赵六"},  {age:'24', sex: "男",name: "钱七"},  {age:'20', sex: "女",name: "魏八"}  ]; 
  /*初始化函数*/  private function initHandler():void  {  var gridArray:ArrayCollection = new ArrayCollection(grid); 
  gridArray.filterFunction;  //自定义DataGrid控件  var dataGrid:DataGrid = new DataGrid();  //X轴坐标  dataGrid.x = 20;  //Y轴坐标  dataGrid.y = 20;  //数据项是否能编辑  dataGrid.editable = false;  //控件宽度  dataGrid.width = 1300;  //控件高度  //dataGrid.height = 600;  //设置表格行数  dataGrid.rowCount = gridArray.length + 1;  //设置控件内容字体大小  dataGrid.setStyle("fontSize", 20);  //设置表头颜色  dataGrid.setStyle("headerColors",[0xB0C4DE,0xB0C4DE]);  //设置字体位置  dataGrid.setStyle("textAlign","center");  //设置样式名  dataGrid.styleName;  // 设置数据源  dataGrid.dataProvider = gridArray;  // 添加监听事件类型与触发函数  dataGrid.addEventListener(ListEvent.ITEM_CLICK, itemClickHandler);  // 添加dataGrid控件  addChild(dataGrid);  //声明一个数组  var columns:Array = new Array();  var column:DataGridColumn;  for ( var i:* in grid[0] ) {  column = new DataGridColumn(i);  columns.push(column);  }  dataGrid.columns = columns; 
  } 
  /*事件*/  private function itemClickHandler(event:ListEvent):void  {  trace(event.target);  } 
  ]]>  </mx:Script> 
  </mx:Application> 
    2、结果如下图 
                           (编辑:91站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |