有时需要在打印前获取报表的打印页数,比如我们需要在页眉或页脚中打印“共 xx 页 第 xx 页”,如何实现呢?QuickReport 生成 Report 之前,我们是无法得知报表页数的,而 QuickReport 是在打印或打印预览时才生成报表,换言之我们只有在打印或打印预览前先将报表生成一次才能获取打印页数。生成报表的方法是 Prepare,请参考以下的例子:
...
var nPageCount:integer;
begin
{...}
QuickRep1.Prepare;
nPageCount:=QuickRep1.QRPrinter.PageCount;
QuickRep1.QRPrinter.Free;
QuickRep1.QRPrinter:=nil;
{在此修改QuickRep1,实现在页眉或页脚中打印“共 xx 页 第 xx 页” ... }
QuickRep1.PreView;
{...}
End;