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

📄 unitplay.pas

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

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls,mmsystem, Menus,shellapi;

type
  TFormPlay = class(TForm)
    ListBox1: TListBox;
    Button1: TButton;
    Button2: TButton;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    Button3: TButton;
    procedure Button2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure ListBox1DblClick(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FormPlay: TFormPlay;

implementation

{$R *.DFM}

procedure TFormPlay.Button2Click(Sender: TObject);
begin
close;
end;

procedure TFormPlay.FormShow(Sender: TObject);
var
  sr: TSearchRec;
  i:integer;
begin
   listbox1.clear;
   i:=FindFirst(extractfilepath(paramstr(0))+'????-*.wav',faAnyFile and not faDirectory, sr);
   while i=0 do
   begin
      listbox1.items.add(sr.name);
      i:=FindNext(sr);
   end;
   if listbox1.items.count>0 then listbox1.itemindex:=listbox1.items.count-1;
end;

procedure TFormPlay.ListBox1DblClick(Sender: TObject);
var
   s1,s2:string;
   path:array[0..256]of char;
begin
   if listbox1.itemindex=-1 then exit;
   GetWindowsDirectory(path,sizeof(path));
   s1:=strpas(path);
   if s1[length(s1)]<>'\' then s1:=s1+'\';
   s1:=s1+'SNDREC32.EXE';
   s2:=extractfilepath(paramstr(0))+listbox1.items[listbox1.itemindex];
   if fileexists(s1) then
      winexec(pchar(s1+' '+s2),SW_SHOWNORMAL)
   else sndplaysound(pchar(s2),snd_async); // or snd_Memory
end;

procedure TFormPlay.Button1Click(Sender: TObject);
begin
   ListBox1DblClick(Sender);
end;

procedure TFormPlay.N1Click(Sender: TObject);
begin
   ListBox1DblClick(Sender);
end;

procedure TFormPlay.N2Click(Sender: TObject);
var
   lpFileOp: TSHFileOpStruct;
begin
   if listbox1.itemindex=-1 then exit;
   with lpFileOp do
   begin
      Wnd := Self.Handle;
      wFunc := FO_DELETE;
      pFrom := pchar(extractfilepath(paramstr(0))+listbox1.items[listbox1.itemindex]+#0#0);
      pTo := nil;
      fFlags := FOF_ALLOWUNDO;
      hNameMappings := nil;
      lpszProgressTitle := nil;
      fAnyOperationsAborted := True;
   end;
   SHFileOperation(lpFileOp);
   formshow(sender);
end;

procedure TFormPlay.Button3Click(Sender: TObject);
begin
  N2Click(Sender);
end;

end.

⌨️ 快捷键说明

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