FlexReport笔记

Flex的分页打印还真是头痛啊,看了Flex的Develope Guide的31章关于打印的内容,有所领悟,如果自己包装一个通用的打印控件,还是很费精力的,想想这种东西,肯定有人做好控件了嘛,嘿嘿,找到了,那就是FlexReport。

试用了下,效果是有的,不过不怎么好用,问题还是一大堆啊!

1. 从SVN上弄下来源码和例子,例子是跑不起来的,ReportDataGrid控件问题,编译通不过,一看源码,傻了吧,ReportDataGrid里面啥都没实现。Google了一把,发现解决方案,把ReportDataGrid替换成PrintDataGrid就能跑起来了。

2. 打印控件需继承Report,内含控件结构有限制,必须如下:

   <Report>

        <PrintComponent/>

        <Body>

               <PrintTextArea/>

               <PrintDataGrid/>

        </Body>

        <PrintComponent/>

   </Report>

   PrintComponent是FlexReport其中一个组件,放在Body之上可以做页眉,放在Body之下可以做页脚,有属性可以选择其显示在首页、尾页、中间页或者所有页;

   PrintTextArea也是FlexReport其中一个组件,文本比较长,需要分页时候,用此控件;

   PrintTextArea和PrintDataGrid是支持分页的控件,但是必须放在Body的下一层使用,如果在PrintDataGrid之外再套一层vBox之类的,那分页将失效。追究源码,Body在计算分页时,只遍历其首层子控件的validNextPage属性。因此,理论上含有validNextPage属性的控件,都可以放在Body里面使用;

   在Body内可以使用其他控件,单只限于放在Body前半部,之后放PrintDataGrid的东东,如果在PrintDataGrid之后放其他控件,分页将失败。

3. 只有页码,没有总页数

目前,只有研究到这个层次了,做个笔记,有空再钻研下源码,改的再通用一点,呵呵

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值