Delphi 3.0是一个非常优秀的软件,利用它可很快地制作出一个简单的MP3音乐点歌台。
原理:制作一个MP3播放程序(本文以Winplay3为例)的外壳,建立中文歌曲名与MP3文件的关联,从而实现中文歌名的“点歌”。
步骤:
一、新建一个文件
创建一个新的工程(New Project)和空白窗体(Form1),将Form1的Caption属性改为“我的点歌台”,在Form1中加入两个Comobobox构件,一个用来显示歌曲所在的专辑,将其Name属性改为zj,一个用来显示中文歌曲名称,将其Name属性改为Gq,在各自的上方分别加入一个Label构件,将其Caption属性改为“专辑选择”和“歌曲选择”,再加入两个Bitbotton构件,将其Caption属性分别设定为“播放”和“退出”。
二、观察装有MP3文件的光盘的目录特点
一般的目录都很有规律,如以笔者的一张光盘为例,全盘共分12张专辑,其子目录分别为:c01、c02……c12,分别建立名为c01txt、c02txt……c12txt的文本文件,按顺序输入相应专辑下的中文歌曲名称,注意一个歌曲名占一行,并将其放入当前目录。在Object inspector中,选择zj,双击其Lines属性,然后依次输入专辑的名称,注意一个专辑名称占据一行;选择Gq,双击其Lines属性,删除其默认内容。
三、编写程序
在unit1pas的Use语句加入Fmxutils,在Var部分加入一行:
var filename:string,path;{filename为MP3文件的文件名,path为其路径}
然后在Form1窗体中,双击zj,加入以下程序:
procedure TForm1zjChange(Sender:TObject);
begin
case zjitemindex of
08,1020:path:=′e:\c0′+inttostr(zjitemindex+1);
9:path:=′e:\c′+inttostr (zjitemindex+1);
{e为光驱的盘符,据实际情况而定}
end;
filename:=inttostr(zjitemindex)+ ′txt′;
gqitemsloadfromfile (filename);
gqtext:=gqItemsstrings [0];
end;
{双击Caption属性为“播放”的按钮,加入以下内容}
procedure TForm1Button1Click(Sender:TObject);
begin
case gqitemindex of
08,1020:filename:=path+′\′+′0′+inttostr(gqitemindex+1)+ ′mp3′;
9:filename:=path+′\10mp3′;
else
filename:=path+′\01mp3′;
end;
executefile(‘winplay3exe’,mpname,′c:\winplay3′,sw_hide);
{winplay3exe为mp3播放程序的文件名,c:\winplay为其路径,sw_hide表示为后台播放,需根据实际情况灵活确定。}
end;
{双击Caption属性为“关闭”的按钮,输入以下内容}
procedure TForm1Button1Click(Sender:TObject);
begin
form1close;
end;
四、编译运行
单击Run图标,程序被编译并运行。此时,单击“专辑选择”下拉框,即会出现各个专辑名称供你选择。同时,在“歌曲选择”中也会出现专辑中所有歌曲的中文名称,选择其一后,单击“播放”按钮,所点歌曲便被播放。这样,一个简单的“点歌台”就制作成功了。
……