2005-6-23 fh@mail.trisunwyse.com
技术原理 【程序编程相关:用Delphi制作以浏览器为界面的应用程】 【推荐阅读:我的一点发现: DBGridEh自带的实】 通过在tppreport的beforeprint事件中对tprinterdevice的pagesetting属性与pagelist属性进行赋值 【扩展信息:有关DELPHI 6.0 开发的三层的严】 为何要如此处理? 根据分析reportbuilder源码,我们得到如下的调用顺序tppviewer -> tppproducer -> tppprinterdevice -> tpppagerequest -> tpppublisher,其中 tpppagerequest 封装了打印页范围信息,而tppprinterdevice 负责将指定的页发送到printercanvas实现步骤
1.在调用单元声明一个类私有变量,用于保存打印页范围 type ... private spagerange: string; ... end; 2.在调用单元声明一个类私有过程,用于处理tppreport.beforeprint事件 procedure tfrmmain.ppreportbeforeprint(sender: tobject); begin if sender is tppreport then if (sender as tppreport).printerdevice <> nil then begin ... 下一页