📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, CsAudio_TLB, StdCtrls, ComCtrls, ExtCtrls, Buttons;
type
TAudioCvtForm = class(TForm)
ProgressBar1: TProgressBar;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
Label2: TLabel;
EditInputMp3: TEdit;
EditOutWav: TEdit;
ButtonCvtWav: TButton;
ButtonStop1: TButton;
ButtonOpenMP3: TButton;
ButtonSaveWav: TButton;
RG_SampleRateWav: TRadioGroup;
RG_Channel: TRadioGroup;
OD_MP3: TOpenDialog;
SD_Wav: TSaveDialog;
Label3: TLabel;
Label4: TLabel;
EditInputWav: TEdit;
EditOutMp3: TEdit;
ButtonOpenWAV: TButton;
ButtonSaveMP3: TButton;
ButtonCvtMp3: TButton;
ButtonStop2: TButton;
RG_SampleRateMP3: TRadioGroup;
RG_ModeMp3: TRadioGroup;
OD_WAV: TOpenDialog;
SD_MP3: TSaveDialog;
CsAConvert1: TCsAConvert;
SpeedButton1: TSpeedButton;
procedure ButtonOpenMP3Click(Sender: TObject);
procedure ButtonSaveWavClick(Sender: TObject);
procedure ButtonCvtWavClick(Sender: TObject);
procedure CsAConvert1Progress(Sender: TObject;
PercentComplete: Integer);
procedure CsAConvert1EndProcess(Sender: TObject);
procedure ButtonStop1Click(Sender: TObject);
procedure ButtonOpenWAVClick(Sender: TObject);
procedure ButtonSaveMP3Click(Sender: TObject);
procedure ButtonCvtMp3Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
AudioCvtForm: TAudioCvtForm;
implementation
{$R *.dfm}
procedure TAudioCvtForm.ButtonOpenMP3Click(Sender: TObject);
begin
if OD_MP3.Execute then
begin
EditInputMp3.Text:= OD_MP3.FileName;
end;
end;
procedure TAudioCvtForm.ButtonSaveWavClick(Sender: TObject);
begin
if SD_Wav.Execute then
begin
EditOutWav.Text:= SD_Wav.FileName;
end;
end;
procedure TAudioCvtForm.ButtonCvtWavClick(Sender: TObject);
begin
CsAConvert1.Mode
if (Trim(EditInputMp3.Text)='') or (Trim(EditOutWav.Text)='') then Exit;
CsAConvert1.InputFile:=EditInputMp3.Text;
CsAConvert1.OutputFile:=EditOutWav.Text;
CsAConvert1.SampleRate:=StrToInt(RG_SampleRateWav.Items[RG_SampleRateWav.ItemIndex]);
if RG_Channel.ItemIndex=0 then CsAConvert1.Channels:=2 else CsAConvert1.Channels:=1;
CsAConvert1.BeginConvertToWave;
end;
procedure TAudioCvtForm.CsAConvert1Progress(Sender: TObject;
PercentComplete: Integer);
begin
ProgressBar1.Position:=PercentComplete;
end;
procedure TAudioCvtForm.CsAConvert1EndProcess(Sender: TObject);
begin
MessageBox(0,Pchar('音频文件转换完成!'),Pchar(Caption),MB_ICONINFORMATION+MB_OK);
end;
procedure TAudioCvtForm.ButtonStop1Click(Sender: TObject);
begin
CsAConvert1.CancelConvert;
end;
procedure TAudioCvtForm.ButtonOpenWAVClick(Sender: TObject);
begin
if OD_WAV.Execute then
begin
EditInputWav.Text:= OD_WAV.FileName;
end;
end;
procedure TAudioCvtForm.ButtonSaveMP3Click(Sender: TObject);
begin
if SD_MP3.Execute then
begin
EditOutMp3.Text:= SD_MP3.FileName;
end;
end;
procedure TAudioCvtForm.ButtonCvtMp3Click(Sender: TObject);
begin
if (Trim(EditInputWav.Text)='') or (Trim(EditOutMp3.Text)='') then Exit;
CsAConvert1.InputFile:=EditInputWav.Text;
CsAConvert1.OutputFile:=EditOutMp3.Text;
CsAConvert1.SampleRate:=StrToInt(RG_SampleRateMP3.Items[RG_SampleRateMP3.ItemIndex]);
CsAConvert1.Mode:=RG_ModeMp3.ItemIndex;
CsAConvert1.BeginConvertToMp3;
end;
procedure TAudioCvtForm.SpeedButton1Click(Sender: TObject);
begin
CsAConvert1.AboutBox;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -