mp3................

来源:互联网 发布:克氏原螯虾 知乎 编辑:程序博客网 时间:2024/04/28 00:24
 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,分别建立名为c01.txt、c02.txt……c12.txt的文本文件,按顺序输入相应专辑下的中文歌曲名称,注意一个歌曲名占一行,并将其放入当前目录。在Object inspector中,选择zj,双击其Lines属性,然后依次输入专辑的名称,注意一个专辑名称占据一行;选择Gq,双击其Lines属性,删除其默认内容。
  三、编写程序
  在unit1?pas的Use语句加入Fmxutils,在Var部分加入一行:
  var name:string,path;{name为MP3文件的文件名,path为其路径}
  然后在Form1窗体中,双击zj,加入以下程序:
  procedure TForm1?zjChange(Sender:TObject);
  begin
  case zj?itemindex of
  0??8,10??20:path:=′e:/c0′+inttostr(zj?itemindex+1);
  9:path:=′e:/c′+inttostr(zj?itemindex+1);
  {e为光驱的盘符,据实际情况而定}
  end;
  name:=inttostr(zj?itemindex)+ ′txt′;
  gq?items?loadfrom (name);
  gq?text:=gq?Items?strings [0];
  end;
  {双击Caption属性为“播放”的按钮,加入以下内容}
  procedure TForm1?Button1Click(Sender:TObject);
  begin
  case gq?itemindex of
  0??8,10??20:name:=path+′/′+′0′+inttostr(gq?itemindex+1)+`mp3`;
  9:name:=path+′/10?mp3′;
  else
  name:=path+ 01?mp3′;
  end;
  execute(‘winplay3?exe’,mpname,′c:/winplay3′,sw_hide);
  {winplay3?exe为mp3播放程序的文件名,c:/winplay为其路径,sw_hide表示为后台播放,需根据实际情况灵活确定。}
  end;
  {双击Caption属性为“关闭”的按钮,输入以下内容}
  procedure TForm1?Button1Click(Sender:TObject);
  begin
  form1?close;
  end;
四、编译运行
  单击Run图标,程序被编译并运行。此时,单击“专辑选择”下拉框,即会出现各个专辑名称供你选择。同时,在“歌曲选择”中也会出现专辑中所有歌曲的中文名称,选择其一后,单击“播放”按钮,所点歌曲便被播放。这样,一个简单的“点歌台”就制作成功了。
 
原创粉丝点击