用OpenDialog实现文件复选,如何得到返回的多个文件名?(40分)

  • 主题发起人 主题发起人 bdz
  • 开始时间 开始时间
TopenDialog在文件复选后,返回的多个文件名是通过TopenDialog.Files获得;
TopenDialog.Files是Tstrings类型,举个例子:
var i:integer;
FileName:string;
begin
if self.OpenDialog1.Execute then begin
for i:=0 to self.OpenDialog1.Files.Count-1 do begin
FileName:=self.OpenDialog1.Files;//取得第i个文件名
//.....
end;
end;
end;
可以吗?
 
TOpenDialog.Files 属性!
 
嗯,又晚了,但是还是贴个例子吧,分就不要了。 :-(

procedure TForm1.Button1Click(Sender: TObject);
var
I: integer;
F: TextFile;
FirstLine: string;
begin
OpenDialog1.Options := [ofAllowMultiSelect, ofFileMustExist];
OpenDialog1.Filter := 'Text files (*.txt)|*.txt|All files (*.*)|*.*';
OpenDialog1.FilterIndex := 2; { start the dialog showing all files }
if OpenDialog1.Execute then
with OpenDialog1.Files do
for I := 0 to Count - 1 do
begin
AssignFile(F, Strings); { next file in Files property }
Reset(F);
Readln(F, FirstLine); { Read the first line out of the file }
Memo1.Lines.Append(FirstLine); { Add the line to the memo }
CloseFile(F);
end;
end;
 
看一下Delphi的Help,好象有Example!
 
先设置TOpenDialog.Options添加ofAllowMultiSelect,然后通过TOpenDialog.Files[Index]访问各个文件名。
 
对了,JohnsonGuo补充的对,我倒是给漏了,
TOpenDialog.Options添加ofAllowMultiSelect的!
 
我才叫真的来晚了,连option都被别人说完了。
 
bdz:如果你还要继续讨论请定期提前你的帖子,如果不想继续讨论请结束帖子。
 
我才叫来晚了, 该说的都说了,:-((((
 
多人接受答案了。
 
后退
顶部