procedure TFBaseReport.fitnice;
var
i: Integer;
begin
for i := Screen.FormCount - 1 downto 0 do
begin
with Screen.Forms[i] do
begin
if ClassName = 'TQRStandardPreview' then
begin
if qkReport.Page.Orientation = poPortrait then
begin
TQRStandardPreview(TComponent(Screen.Forms[i])).Zoom100.Down := true;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomToWidth.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomFit.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).Zoom100.Click;
end else
begin
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomFit.Down := true;
TQRStandardPreview(TComponent(Screen.Forms[i])).Zoom100.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomToWidth.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomFit.Click;
end;
end;
end;
end;
end;procedure TFBaseReport.qkReportEndPage(Sender: TCustomQuickRep);
begin
fitnice;
end;
我查了几个国外网站都说要改QReport的源代码或者自己做Preview难道真的没有别的办法了吗?
var
i: Integer;
begin
for i := Screen.FormCount - 1 downto 0 do
begin
with Screen.Forms[i] do
begin
if ClassName = 'TQRStandardPreview' then
begin
if qkReport.Page.Orientation = poPortrait then
begin
TQRStandardPreview(TComponent(Screen.Forms[i])).Zoom100.Down := true;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomToWidth.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomFit.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).Zoom100.Click;
end else
begin
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomFit.Down := true;
TQRStandardPreview(TComponent(Screen.Forms[i])).Zoom100.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomToWidth.Down := false;
TQRStandardPreview(TComponent(Screen.Forms[i])).ZoomFit.Click;
end;
end;
end;
end;
end;procedure TFBaseReport.qkReportEndPage(Sender: TCustomQuickRep);
begin
fitnice;
end;
我查了几个国外网站都说要改QReport的源代码或者自己做Preview难道真的没有别的办法了吗?
解决方案 »
- 请问用SPCOMM来传递文件怎么传递?
- 托利多tcs-60电子秤编程问题
- delphi中可以调用BCB中的文件么?
- 不同进程间,如何传递字符串?
- 还有一个问题,如何将access里的某个表另存为dbf文件,已经没有分了,能帮忙我感激涕零,不理我也是您的本分!
- 愿女友天天开心天天快乐
- 项目合作(限北京)有意者请与我联系Delphi+sql server!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 我的电脑不行,大家看看
- ZLIB的使用问题
- 如何在Delphi中能取出应用程序的路径
- 救命呀,关于控件透明的问题
- 各位仁兄中有海南的吗?那里的薪水怎样?
type TMyPreviewInterface = class(TQRStandardPreviewInterface)
public
procedure OnPageAvailable(Sender: TObject;pageno:integer);
function Show(AQRPrinter : TQRPrinter) : TWinControl; override;
function ShowModal(AQRPrinter : TQRPrinter): TWinControl; override;
end;
procedure TMyPreviewInterface.OnPageAvailable(Sender: TObject;pageno:integer);
begin
TQrPreView(Sender).Zoom:=100;
end;function TMyPreviewInterface.Show(AQRPrinter: TQRPrinter): TWinControl;
begin
result:=TQRStandardPreview(inherited Show(AQRPrinter));
TQRStandardPreview(result).Zoom100.Down:=true;
TQRStandardPreview(result).QRPreview.OnPageAvailable:=OnPageAvailable;
end;function TMyPreviewInterface.ShowModal(
AQRPrinter: TQRPrinter): TWinControl;
begin
result:=TQRStandardPreview(inherited ShowModal(AQRPrinter));
TQRStandardPreview(result).Zoom100.Down:=true;
TQRStandardPreview(result).QRPreview.OnPageAvailable:=OnPageAvailable;
end;
你显示preview,这样:procedure TForm1.Button1Click(Sender: TObject);
begin
RegisterPreviewClass(TMyPreviewInterface); //这一行要加
QuickRep1.Preview;
end;