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

📄 unitphonebook.pas

📁 自动语音应答系统
💻 PAS
字号:
unit UnitPhoneBook;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, StdCtrls, Buttons;

type
  TFormPhoneBook = class(TForm)
    ListBox1: TListBox;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    procedure FormShow(Sender: TObject);
    procedure ListBox1DblClick(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ListBox1Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
  private
    { Private declarations }
    slist:TStringlist;
  public
    { Public declarations }
  end;

var
  FormPhoneBook: TFormPhoneBook;

implementation

uses UnitMain;

{$R *.DFM}

procedure TFormPhoneBook.FormShow(Sender: TObject);
var
   s1,s2:string;
begin
   s1:=FormMain.WaveFileDir+'PhoneBook1.Dat';
   s2:=FormMain.WaveFileDir+'PhoneBook2.Dat';
   if not fileexists(s1) then
   begin
      listbox1.Clear;
      listbox1.Items.SaveToFile(s1);
      listbox1.Items.SaveToFile(s2);
   end;
   listbox1.Items.LoadFromFile(s1);
   slist:=Tstringlist.Create;
   slist.LoadFromFile(s2);
   if listbox1.Items.count<>slist.Count then
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
   ListBox1Click(Sender);
end;

procedure TFormPhoneBook.ListBox1DblClick(Sender: TObject);
begin
   ListBox1Click(Sender);
   close;
end;

procedure TFormPhoneBook.BitBtn2Click(Sender: TObject);
var
   i:integer;
begin
   i:=listbox1.ItemIndex;
   if i=-1 then exit;
   if listbox1.Items.count<>slist.Count then
   begin
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
      exit;
   end;
   if messagedlg('真的删除吗?',mtconfirmation,[mbyes,mbno],0)=mrno then exit;
   listbox1.items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.bak');
   listbox1.Items.Delete(i);
   listbox1.items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.dat');

   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.bak');
   slist.Delete(i);
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.dat');
end;

procedure TFormPhoneBook.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
   slist.free;
end;

procedure TFormPhoneBook.ListBox1Click(Sender: TObject);
var
   i:integer;
begin
   i:=listbox1.ItemIndex;
   if i=-1 then
   begin
      edit1.text:='';
      edit2.text:='';
      exit;
   end;
   if listbox1.Items.count<>slist.Count then
   begin
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
      exit;
   end;
   edit1.text:=listbox1.items[i];
   edit2.text:=slist.Strings[i];
end;

procedure TFormPhoneBook.BitBtn3Click(Sender: TObject);
var
   i:integer;
begin
   i:=listbox1.ItemIndex;
   if i=-1 then exit;
   if listbox1.Items.count<>slist.Count then
   begin
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
      exit;
   end;
   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.bak');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.bak');

   listbox1.items[i]:=trim(edit1.text);
   slist.Strings[i]:=trim(edit2.text);

   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.Dat');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.Dat');
end;

procedure TFormPhoneBook.BitBtn4Click(Sender: TObject);
begin
close;
end;

procedure TFormPhoneBook.BitBtn1Click(Sender: TObject);
begin
   if listbox1.Items.count<>slist.Count then
   begin
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
      exit;
   end;
   edit1.text:=trim(edit1.text);
   if edit1.text='' then exit;
   if listbox1.Items.IndexOf(edit1.text)<>-1 then
   begin
      MessageDlg('已经存在.', mtInformation, [mbOk], 0);
      exit;
   end;
   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.bak');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.bak');

   listbox1.items.add(trim(edit1.text));
   edit1.text:='';
   slist.add(trim(edit2.text));
   edit2.text:='';

   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.Dat');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.Dat');
end;

procedure TFormPhoneBook.BitBtn5Click(Sender: TObject);
var
   i:integer;
   s:string;
begin
   i:=listbox1.ItemIndex;
   if i<=0 then exit;
   if listbox1.Items.count<>slist.Count then
   begin
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
      exit;
   end;
   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.bak');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.bak');

   s:=listbox1.items[i-1];
   listbox1.items[i-1]:=listbox1.items[i];
   listbox1.items[i]:=s;
   s:=slist.Strings[i-1];
   slist.Strings[i-1]:=slist.Strings[i];
   slist.Strings[i]:=s;

   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.Dat');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.Dat');
   listbox1.ItemIndex:=listbox1.ItemIndex-1;
end;

procedure TFormPhoneBook.BitBtn6Click(Sender: TObject);
var
   i:integer;
   s:string;
begin
   i:=listbox1.ItemIndex;
   if (i=-1)or(i>=Listbox1.items.count-1) then exit;
   if listbox1.Items.count<>slist.Count then
   begin
      MessageDlg('电话号码薄错误.', mtInformation, [mbOk], 0);
      exit;
   end;
   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.bak');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.bak');

   s:=listbox1.items[i+1];
   listbox1.items[i+1]:=listbox1.items[i];
   listbox1.items[i]:=s;
   s:=slist.Strings[i+1];
   slist.Strings[i+1]:=slist.Strings[i];
   slist.Strings[i]:=s;

   listbox1.Items.SaveToFile(FormMain.WaveFileDir+'PhoneBook1.Dat');
   slist.SaveToFile(FormMain.WaveFileDir+'PhoneBook2.Dat');
   listbox1.ItemIndex:=listbox1.ItemIndex+1;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -