是的,OpenDialog的返回值的Files是一个TStrings,里面包含了所有的选中文件信息。

解决方案 »

  1.   

    To hihihi and 河:
       两位可不可以给个例子,只要关键的代码示范就可以。行的话一定给分!
      

  2.   

    procedure initlist(songfiles:tstrings);  //重新装入歌曲时初始化各种参数//filearray是保存歌曲信息的动态数组
    var
      filecount:integer;
      i:integer;
    begin
    filecount:=songfiles.Count;     //重新设定歌曲总数
    setlength(filearray ,filecount);//重新设定数组长度for I := 0 to filecount - 1 do
        filearray[i]:=songFiles.Strings[i];//初始化歌曲数组end;
    记得给分哦 ^_^
      

  3.   

    其中songfiles就是OpenDialog的Files属性
      

  4.   

    首先要更改OpenDialog1的属性,让它能够一次选择多个文件,在Options属性中改;
    OpenDialog1.Execute;
    if OpenDialog1.FileName <> '' then
    begin
        for i:= 0 to OpenDialog1.Files.Count-1 do
        begin
            MediaPlay1.Close;
            MediaPlay1.FileName := OpenDialog1.Files[i]; 
            MediaPlay1.Open;
        end;
    end;
    如果要实现更复杂一些的操作,其实只是对OpenDialog1.Files这个TStrings类型的返回结果操作,因为这个返回结果中包含这选择的所有文件的列表。
      

  5.   

    Lovewangj(lllll)
    说得真详细受用无穷
      

  6.   

    你也可以用一用我的方法。
    你还记得Winamp 吧,这个软件是通过把要顺序播放的文件的文件名写入了一个文本文件中,然后顺序读取此文本文件的每一行来播放。
    在Delphi  中可以把 OpenDialog 读出的文件写入文本文件只非常容易的,读取同样容易。
    这种方法好处多多,就不用我说了吧。我的方法可以得到多少分?