动态构造flex多表头

动态构造 flex 多表头

在开发 flex 报表的过程中感觉针对每一张报表重新写一个 mxml 是非常不值得的。如果编译好的 swf 可以适应不同的报表不就很爽了。

如下面是一个多表头的例子:

现在想用下面这种格式的数据生成上面的表头。

上面这段 xml 用“ group ”来表示列合并的部分,“ column ”表示了数据列,如果把表头看作树的话“ column ”就是叶子。叶子在表头上对应的就是数据列,多出了相应属性。

怎么对上面的 xml 进行解析呢:

上面定义了一个 AdvancedDataGrid 实例,这里的 groupedColumns 里面只有一个 AdvancedDataGridColumnGroup 并设置其 IddataColumns

上面的 httpService 是用来访问后台生成的 xml 文件。处理它的程序是 onXmlToSet 方法,见下面:

这里得到了 setXml ,其中 dataColumns = createHeaders(dataColumns,setXml.elements()); 这一句就是动态生成表头。

见下面这个方法:

这个方法有两个参数,一个是 parent ,表示上一级的列合并,一个是用一个 for 循环,当遇到 column 时直接加到 parent 上,否则 group 将作为下一个 parent 再次执这个方法,并加到 parent 。就是一个简单的树遍历。

最后的 parent 就是一个完整的表头。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值