用QuickRep打印报表时,如何判断报表页数(50分)

  • 主题发起人 主题发起人 strongboy
  • 开始时间 开始时间
S

strongboy

Unregistered / Unconfirmed
GUEST, unregistred user!
如题,用QuickRep打印报表时,如何判断报表页数(在代码中实现,报表生成时得到
报表页数)。
希望高手能帮帮我这个问题,我快急死了。
 
quickrep.lastpage就可以得到总页数.
 
QuickReport2.Prepare;//这行一定要先执行
QUickReport2.QRLabel3.Caption:=IntToStr(QuickReport2.QRPrinter.PageCount);
^^^^^^^^^^^^
QuickReport2.Preview;
 
QuickReport1.QRPrinter.lastpage
 
谢谢大家,我已通过QRPrinter.PageCount取得了页数。
但正如你说,在此之前要有QuickRep1.Prepare,执行这条语句时它会遍历我要
显示的所有记录,指针在DBGrid中的二三百条记录会从头移到尾,感觉很不好,
怎样能让它直接显示预览,而不显示遍历,再次感谢。
 
to netatom
能否告诉我在执行QuickRep1.Prepare这条语句时怎样能让它直接显
示预览,而不显示遍历,再次感谢。
 
要得到总页数,必须要这样。
你说指针在DBGrid中从头到尾,可以这样:
在预览之前用Table.DisableConstraints;
预览之后再Table.EnableConstraints;
另外,如果你用的是Table类型的数据库,
可以直接用
Table.RecordCount div 每页行数 + 1
得到总页数,在预览时赋值给相应的QRLable,
这样就不用QuickRep1.Prepare了.
 
后退
顶部