📄 unit1.~pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, shellapi;
type
TForm1 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
GroupBox1: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Edit1: TEdit;
SpeedButton1: TSpeedButton;
Button1: TButton;
Button2: TButton;
GroupBox2: TGroupBox;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Edit2: TEdit;
SpeedButton2: TSpeedButton;
Button3: TButton;
Button4: TButton;
SaveDialog1: TSaveDialog;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure RadioButton3Click(Sender: TObject);
procedure RadioButton4Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
vlj:string;
opstruc:tshfileopstruct;
frombuf,tobuf:array[0..128]of char;
datapath:string;
begin
datapath:=extractfilepath(paramstr(0));
if radiobutton1.Checked then
vlj:=datapath+'/backup/test.bak';
if radiobutton2.Checked then
vlj:=edit1.Text;
if radiobutton1.Checked then
begin
if fileexists(datapath+'/backup/test.bak') then
deletefile(datapath+'backup/test.bak');
end;
fillchar(frombuf,sizeof(frombuf),0);
fillchar(tobuf,sizeof(tobuf),0);
strpcopy(frombuf,pchar(datapath+'/test.mdb'));
strpcopy(tobuf,pchar(vlj));
with opstruc do
begin
wnd:=handle;
wfunc:=fo_copy;
pfrom:=@frombuf;
pto:=@tobuf;
fflags:=fof_noconfirmation or fof_renameoncollision;
fanyoperationsaborted:=false;
hnamemappings:=nil;
lpszprogresstitle:=nil;
end;
if shfileoperation(opstruc)=0 then
begin
// showmessage('备份成功!');
application.MessageBox(pchar('备份成功!'+#13),'数据恢复',mb_ok+mb_iconinformation);
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if savedialog1.Execute then
edit1.Text :=savedialog1.FileName;
end;
procedure TForm1.RadioButton1Click(Sender: TObject);
begin
if radiobutton1.Checked then
edit1.Enabled :=false;
speedbutton1.Enabled :=false;
end;
procedure TForm1.RadioButton2Click(Sender: TObject);
begin
if radiobutton2.Checked then
begin
edit1.Enabled :=true;
speedbutton1.Enabled :=true;
end
else
begin
edit1.Enabled :=false;
speedbutton1.Enabled :=false;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
vlj:string;
opstruc:tshfileopstruct;
frombuf,tobuf:array[0..128]of char;
datapath:string;
begin
datapath:=extractfilepath(paramstr(0));
if radiobutton1.Checked then
vlj:=datapath+'/backup/test.bak';
if radiobutton2.Checked then
vlj:=edit2.Text;
//DataFm.datacon.Connected:=false;;
if fileexists(datapath+'test.mdb') then //fileexists检查文件是否存在
deletefile(datapath+'test.mdb');
fillchar(frombuf,sizeof(frombuf),0);
fillchar(tobuf,sizeof(tobuf),0);
strpcopy(frombuf,pchar(vlj));
strpcopy(tobuf,pchar(datapath+'test.mdb'));
with opstruc do
begin
wnd:=handle;
wfunc:=fo_copy;
pfrom:=@frombuf;
pto:=@tobuf;
fflags:=fof_noconfirmation or fof_renameoncollision;
fanyoperationsaborted:=false;
hnamemappings:=nil;
lpszprogresstitle:=nil;
end;
if shfileoperation(opstruc)=0 then
begin
//showmessage('还原成功!');
application.MessageBox(pchar('还原成功!'+#13),'数据备份',mb_ok+mb_iconinformation);
end;
end;
procedure TForm1.RadioButton3Click(Sender: TObject);
begin
if radiobutton3.Checked then
edit2.Enabled :=false;
speedbutton2.Enabled :=false;
end;
procedure TForm1.RadioButton4Click(Sender: TObject);
begin
if radiobutton4.Checked then
begin
edit2.Enabled :=true;
speedbutton2.Enabled :=true;
end
else
begin
edit2.Enabled :=false;
speedbutton2.Enabled :=false;
end;
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
if opendialog1.Execute then
edit2.Text :=opendialog1.FileName ;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
close;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
if radiobutton1.Checked then
edit1.Enabled :=false;
speedbutton1.Enabled :=false;
if radiobutton3.Checked then
edit2.Enabled :=false;
speedbutton2.Enabled :=false;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -