📄 print.pas
字号:
unit Print;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Mask;
type
TFrm_Print = class(TForm)
ED_Pages: TEdit;
ED_Copy: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
BT_Sure: TButton;
RadioGroup1: TRadioGroup;
procedure BT_SureClick(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frm_Print: TFrm_Print;
implementation
uses RptTable;
{$R *.dfm}
procedure TFrm_Print.BT_SureClick(Sender: TObject);
var
i,j:integer;
pages:array of integer;
s:string;
TS:TStrings;
begin
Frm_Table.QuickRep1.PrinterSettings.Copies:=StrToInt(Trim(ED_Copy.Text));
case Self.RadioGroup1.ItemIndex of
0: //全部
begin
with Frm_Table do
begin
BindData(0);
QuickRep1.print;
if PageC>1 then
begin
for i:=1 to PageC-1 do
begin
BindData(i);
QuickRep1.print;
end;
end;
end;
end;
1://当前页
begin
with Frm_Table do
begin
BindData(PageIndex);
QuickRep1.print;
end;
end;
2: //页码范围
begin
TS:=TStringList.Create;
try
s:=trim(ED_Pages.Text);
if s='' then exit;
for i:=0 to Length(s) do
begin
if s[i] in ['0'..'9'] then
TS[TS.Count-1]:=TS[TS.Count-1]+s[i]
else
if S[i]='-' then
begin
TS.Add('-');
TS.Add('');
end
else
TS.Add('');
end;
j:=0;
for i:=0 to TS.Count-1 do
begin
if TS[i]<>'-' then
begin
SetLength(Pages,j+1);
PageS[j]:=StrToInt(TS[i]);
Inc(j);
end
else
begin
SetLength(Pages,j+1);
PageS[j]:=PageS[j-1]+1;
Inc(j);
while PageS[j-1]<StrToInt(TS[i+1])-1 do
begin
SetLength(Pages,j+1);
PageS[j]:=PageS[j-1]+1;
Inc(j);
end;
end;
end;
TS.Free;
for i:=Low(Pages) to High(PageS) do
with Frm_Table do
begin
//QuickRep1.NewPage;
if (PageC>0) and(PageS[i]<=PageC) then
begin
BindData(PageS[i]-1);
QuickRep1.print;
end;
end;
except
begin
showmessage('你的输入不合法');
TS.Free
end;
end;
end;{页码范围}
end;{case}
Frm_Print.Close;
end;
procedure TFrm_Print.RadioGroup1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex=2 then ED_Pages.Enabled:=True
else ED_Pages.Enabled:=False;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -