unit1.pas
来自「dxdbgrid 界面打印源码,dxprint 打印的功能」· PAS 代码 · 共 246 行
PAS
246 行
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxExEdtr, StdCtrls, dxTL, dxDBCtrl, dxDBGrid, dxCntner, DB,
ADODB, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev,
dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, dxPSCore,
dxPSdxTLLnk, dxPSdxDBCtrlLnk, dxPSdxDBGrLnk, Mask, DBCtrls,
dxPSContainerLnk, cxLookAndFeelPainters, Menus, cxButtons;
type
TForm1 = class(TForm)
ADODataSet1: TADODataSet;
DataSource1: TDataSource;
dxDBGrid1: TdxDBGrid;
dxDBGrid1Column1: TdxDBGridColumn;
dxDBGrid1Column2: TdxDBGridColumn;
dxDBGrid1Column3: TdxDBGridColumn;
dxDBGrid1Column4: TdxDBGridColumn;
dxDBGrid1Column5: TdxDBGridColumn;
dxDBGrid1Column6: TdxDBGridColumn;
dxDBGrid1Column7: TdxDBGridColumn;
Button1: TButton;
Button4: TButton;
Button5: TButton;
dxComponentPrinter1: TdxComponentPrinter;
dxComponentPrinter1Link1: TdxDBGridReportLink;
dxComponentPrinter1Link2: TdxDBGridReportLink;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
Button2: TButton;
dxComponentPrinter1Link3: TdxCustomContainerReportLink;
cxButton1: TcxButton;
cxButton2: TcxButton;
PopupMenu1: TPopupMenu;
aa1: TMenuItem;
bb1: TMenuItem;
cc1: TMenuItem;
cxButton3: TcxButton;
PopupMenu2: TPopupMenu;
MenuItem1: TMenuItem;
MenuItem2: TMenuItem;
MenuItem3: TMenuItem;
Button3: TButton;
dxDBGrid2: TdxDBGrid;
dxDBGridColumn1: TdxDBGridColumn;
dxDBGridColumn2: TdxDBGridColumn;
dxDBGridColumn3: TdxDBGridColumn;
dxDBGridColumn4: TdxDBGridColumn;
dxDBGridColumn5: TdxDBGridColumn;
dxDBGridColumn6: TdxDBGridColumn;
dxDBGridColumn7: TdxDBGridColumn;
Button6: TButton;
SaveDialog1: TSaveDialog;
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure dxDBGrid1DblClick(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure cxButton2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure cxButton3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure bb1Click(Sender: TObject);
procedure aa1Click(Sender: TObject);
procedure MenuItem2Click(Sender: TObject);
procedure MenuItem1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unitcheliangdj;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
self.adodataset1.Active :=not adodataset1.Active;
if button1.Caption='打开' then
button1.Caption:='关闭'
else
button1.Caption:='打开';
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
try
form2:=Tform2.Create(self);
dxcomponentprinter1link1.component := dxdbgrid1;
dxcomponentprinter1link2.component := form2.dxdbgrid2;
dxcomponentprinter1link1.rebuildreport;
dxcomponentprinter1link2.rebuildreport;
dxcomponentprinter1.preview(true,dxcomponentprinter1link1);
dxcomponentprinter1.preview(true,dxcomponentprinter1link2);
dxcomponentprinter1link1.component := nil;
dxcomponentprinter1link2.component := nil;
finally
form2.Free;
end;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
try
form2:=Tform2.Create(self);
dxcomponentprinter1link1.component := dxdbgrid1;
dxcomponentprinter1link2.component := form2.dxdbgrid2;
dxcomponentprinter1link1.rebuildreport;
dxcomponentprinter1link2.rebuildreport;
dxcomponentprinter1link1.Print(true,nil);
dxcomponentprinter1link2.Print(true,nil);
dxcomponentprinter1link1.component := nil;
dxcomponentprinter1link2.component := nil;
finally
form2.Free;
end;
end;
procedure TForm1.dxDBGrid1DblClick(Sender: TObject);
begin
try
form2:=TForm2.Create(self);
form2.ShowModal;
finally
form2.Free;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
dxcomponentprinter1link3.component := form1;
dxcomponentprinter1link3.rebuildreport;
dxcomponentprinter1.preview(true,dxcomponentprinter1link3);
dxcomponentprinter1link3.component := nil;
end;
procedure TForm1.cxButton2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
pt:TPoint;
begin
GetCursorPos(pt);
PopupMenu1.Popup((pt.x-x),(pt.y+(cxButton2.Height-y)));
end;
procedure TForm1.cxButton3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
pt1:TPoint;
begin
GetCursorPos(pt1);
PopupMenu2.Popup((pt1.x-x),(pt1.y+(cxButton3.Height-y)));
end;
procedure TForm1.bb1Click(Sender: TObject);
begin
try
form2:=Tform2.Create(self);
dxcomponentprinter1link1.component := dxdbgrid1;
dxcomponentprinter1link2.component := form2.dxdbgrid2;
dxcomponentprinter1link1.rebuildreport;
dxcomponentprinter1link2.rebuildreport;
dxcomponentprinter1.preview(true,dxcomponentprinter1link1);
dxcomponentprinter1.preview(true,dxcomponentprinter1link2);
dxcomponentprinter1link1.component := nil;
dxcomponentprinter1link2.component := nil;
finally
form2.Free;
end;
end;
procedure TForm1.aa1Click(Sender: TObject);
begin
dxcomponentprinter1link1.component := dxdbgrid1;
dxcomponentprinter1link1.rebuildreport;
dxcomponentprinter1.preview(true,dxcomponentprinter1link1);
dxcomponentprinter1link1.component := nil;
end;
procedure TForm1.MenuItem2Click(Sender: TObject);
begin
try
form2:=Tform2.Create(self);
dxcomponentprinter1link1.component := dxdbgrid1;
dxcomponentprinter1link2.component := form2.dxdbgrid2;
dxcomponentprinter1link1.rebuildreport;
dxcomponentprinter1link2.rebuildreport;
dxcomponentprinter1link1.Print(true,nil);
dxcomponentprinter1link2.Print(true,nil);
dxcomponentprinter1link1.component := nil;
dxcomponentprinter1link2.component := nil;
finally
form2.Free;
end;
end;
procedure TForm1.MenuItem1Click(Sender: TObject);
begin
dxcomponentprinter1link1.component := dxdbgrid1;
dxcomponentprinter1link1.rebuildreport;
dxcomponentprinter1link1.Print(true,nil);
dxcomponentprinter1link1.component := nil;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
try
Formcheldj:=tFormcheldj.Create(self);
Formcheldj.ShowModal;
finally
Formcheldj.Free;
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
if self.SaveDialog1.Execute then
begin
dxDBGrid1.savetoxls(self.SaveDialog1.FileName+'.xls',True);
end;
if self.SaveDialog1.Execute then
begin
dxDBGrid2.savetoxls(self.SaveDialog1.FileName+'.xls',True);
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?