Welcome

首页 / 软件开发 / Delphi / 自定义快速报表的打印预览窗口

自定义快速报表的打印预览窗口2009-10-11QuickReport2.0中提供的默 认打印预览窗口是英文界面的,如果开发的中文软件中带有这种英文显示, 不免有些小小的缺憾。因此有必要实现中文界面的打印预览窗口。但是Delphi提供的源代码中并没有打印预览窗口.PAS源文件,这就无法直接修改源 码,只能全部自己编程实现。经多次实践,笔者模仿实现了与默认预览窗口外观类似,功能相同的打印预览窗口。步骤如下:

1.新建一个窗体,设置Name为MyPreview。

2.在窗体上添加一Toolbar控件, 模仿默认预览窗口创建相应的Toolbutton,并设置各按钮的Hint提示。

3.添加一Panel控件,对齐方式置 为alBottom。再在此Panel上放一ProgressBar(左对齐)和Panel(右对齐), 分别显示报表装载进度和其他提示信息。

4.添加QRPreview控件,对齐方式 置为alClient。

5.添加OpenDialog,设置Filter 属性为*.QR;添加SaveDialog,设置Filter属性为*.QR|*.TXT|*.HTM|*.CSV, 设置DefaultExt属性为*.QR。

6.双击各个Toolbutton,输入相 应代码。

可以按以下方法调用自定义预览 窗口。

重载TQuickRep的OnPreview事件, 输入如下代码:

procedureTRptForm.RptFormPreview(Sender:TObject);
begin
withTMyPreview.Create(Application)do
begin
QRPreview1.QRPrinter:=TQRPrinter(Sender);
CurRep:=self;
Show;
end;
end;