📄 frmmain.pas
字号:
unit FrmMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, printers, qrextra, QRExport, qrprntr, quickrpt, QRCtrls,
TypInfo;
type
TForm1 = class(TForm)
btn1: TBitBtn;
BitBtn1: TBitBtn;
Memo1: TMemo;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
procedure btn1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses
FrmQRpt, Unit2;
procedure TForm1.btn1Click(Sender: TObject);
begin
//QRptFrm.QuickRep1.Page.PaperSize := PageSetupDialog1.PageSetupDlgRec.hDevMode.dmPaperSize;
QRptFrm.QuickRep1.Preview;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Form2.QuickRep1.DataSet := QRptFrm.Table1;
Form2.QRDBText1.DataSet := QRptFrm.Table1;
Form2.QRDBText2.DataSet := QRptFrm.Table1;
Form2.QRDBText3.DataSet := QRptFrm.Table1;
Form2.QRDBText4.DataSet := QRptFrm.Table1;
Form2.QuickRep1.Preview;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
memo1.Lines.Clear;
memo1.Lines.AddStrings(printer.Printers);
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
end;
//由于使用了PageSetupDialog1後,启动特别慢,所以拿掉了
{type
pDEVMODE = ^DEVMODE;
var
pdm : pDEVMODE;
po : TPrinterOrientation;
begin
if PageSetupDialog1.Execute then begin
pdm := pDEVMODE(GlobalLock(PageSetupDialog1.PageSetupDlgRec.hDevMode));
//根据用户的选择设置纸张和从、横向
QRptFrm.QuickRep1.Page.PaperSize := TQRPaperSize((pdm^).dmPaperSize);
if (pdm^).dmOrientation = DMORIENT_PORTRAIT then
po := poPortrait
else
po := poLandscape;
//由于delphi定义的横、纵枚举值和windows不同,因此不能直接强制转换
//po := TPrinterOrientation((pdm^).dmOrientation);
//if po = poPortrait then showmessage('纵的')
//else showmessage('横的');
QRptFrm.QuickRep1.Page.Orientation := po;
end;
end;
}
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -