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

📄 unit1.~pas

📁 ado 控件
💻 ~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 + -