⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mypreviewfrm.pas

📁 一个电力企业的后台管理程序
💻 PAS
字号:
unit MyPreviewFrm;

{在报表单元uses本单元及qrprntr.pas单元,并在quickrep1控件的OnPreview事件中
加入如下代码:
with TMyPreview.Create(Application) do
begin
    QRPreview1.QRPrinter := TQRPrinter(Sender);
    CurRep := self.QuickRep1;
Show;
end;}

interface

uses
  Windows, Messages, SysUtils, Classes,
Graphics, Controls, Forms, Dialogs,
ComCtrls, ToolWin, qrprntr,Quickrpt,
StdCtrls, ExtCtrls,qrextra, ImgList;


type
  TMyPreview = class(TForm)
    ToolBar1: TToolBar;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton6: TToolButton;
    ToolButton7: TToolButton;
    Panel1: TPanel;
    Panel2: TPanel;
    QRPreview1: TQRPreview;
    ToolButton8: TToolButton;
    ToolButton9: TToolButton;
    ToolButton11: TToolButton;
    ToolButton13: TToolButton;
    ToolButton14: TToolButton;
    ToolButton1: TToolButton;
    ToolButton5: TToolButton;
    ToolButton10: TToolButton;
    ImageList1: TImageList;
    Panel3: TPanel;
    procedure ToolButton2Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure ToolButton6Click(Sender: TObject);
    procedure ToolButton8Click(Sender: TObject);
    procedure ToolButton7Click(Sender: TObject);
    procedure ToolButton9Click(Sender: TObject);
    procedure QRPreview1PageAvailable(Sender: TObject; PageNum: Integer);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ToolButton14Click(Sender: TObject);
    procedure ToolButton11Click(Sender: TObject);
    procedure ToolButton13Click(Sender: TObject);
  private
    { Private declarations }
    FPageCount : integer; // 生成报表的总页数
  public
    { Public declarations }
    CurRep : TQuickRep; // 所预览的报表
    procedure UpdatePanelShow;
  end;

var
  MyPreview: TMyPreview;

implementation

{$R *.DFM}
procedure TMyPreview.UpdatePanelShow;
begin // 更新显示
Panel2.Caption :=
' 第'+inttostr(QRPreview1.PageNumber)+
' 页 总'+inttostr(FPageCount)+' 页';
end;


procedure TMyPreview.ToolButton2Click(Sender: TObject);
begin
QRPreview1.ZoomToFit;
end;

procedure TMyPreview.ToolButton3Click(Sender: TObject);
begin
QRPreview1.Zoom:=100;
end;

procedure TMyPreview.ToolButton4Click(Sender: TObject);
begin
QRPreview1.ZoomToWidth;
end;

procedure TMyPreview.ToolButton6Click(Sender: TObject);
begin
QRPreview1.PageNumber := 1;
UpdatePanelShow;
end;

procedure TMyPreview.ToolButton8Click(Sender: TObject);
begin
QRPreview1.PageNumber := QRPreview1.PageNumber+1;
UpdatePanelShow;
end;

procedure TMyPreview.ToolButton7Click(Sender: TObject);
begin
QRPreview1.PageNumber := QRPreview1.PageNumber-1;
if QRPreview1.PageNumber =0 then
QRPreview1.PageNumber:=1;
UpdatePanelShow;
end;

procedure TMyPreview.ToolButton9Click(Sender: TObject);
begin
QRPreview1.PageNumber := FPageCount;
UpdatePanelShow;
end;

procedure TMyPreview.QRPreview1PageAvailable(Sender: TObject;
  PageNum: Integer);
begin
FPageCount := PageNum ;
UpdatePanelShow;
end;

procedure TMyPreview.FormClose(Sender: TObject; var Action: TCloseAction);
begin
CurRep := nil;
Action := caFree;
end;

procedure TMyPreview.ToolButton14Click(Sender: TObject);
begin
Close;
end;

procedure TMyPreview.ToolButton11Click(Sender: TObject);
begin
try
 QRPreview1.QRPrinter.PrintSetup;
except
 showmessage('请安装打印机');
end;
end;

procedure TMyPreview.ToolButton13Click(Sender: TObject);
begin
QRPreview1.QRPrinter.Print;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -