我想打开对话框,然后选择多个文件赋给listbox试了半天都不行,怎么弄呢?
var
i:integer;
begin
if opendialog1.Execute then
for i:=0 to 100 do
listbox1.items.Strings[i]:=opendialog1.FileName ;
end;
...全文
1759打赏收藏
怎么把对话框的多个值赋给listbox
我想打开对话框,然后选择多个文件赋给listbox试了半天都不行,怎么弄呢? var i:integer; begin if opendialog1.Execute then for i:=0 to 100 do listbox1.items.Strings[i]:=opendialog1.FileName ; end;
你的错误不在于是否用
listbox1.items.Add(opendialog1.FileName) ;
listbox1.items.Strings[i]:=opendialog1.FileName ;
这两个都没有问题。
而在于你是在执行了一次opendialog1.execute之后就开始循环了,结果肯定是101行,行行都是相同的。
for i:=0 to 100 do
begin
if opendialog1.Execute then
listbox1.items.Strings[i]:=opendialog1.FileName ;
end;
这样一一放入才正确。不过这样的话会不停的要打开dialog,很麻烦。
我不确定你是如何在opendialog中选择多个文件的,你是按shift?还是用鼠标框住你要的文件?
好像一次只能选择一个呀。我没有很注意。