帮忙看看代码哪里错了...谢谢各位了.. ( 积分: 25 )

  • 主题发起人 主题发起人 k4-1
  • 开始时间 开始时间
K

k4-1

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TF_main.Button1Click(Sender: TObject);
var
i,k:integer;
gamelist:Tstringlist;
newitem:Tlistitem;
Iconindex:string;
begin
imagelist1.Handle := ShGetFileInfo('', 0, SHFileInfo, SizeOf(SHFileInfo), SHGFI_LARGEICON or SHGFI_ICON or SHGFI_SYSICONINDEX);
newitem:=nil;
gamelistview.Items.Clear;
gamelist:=Tstringlist.Create;
Try
gamelist.LoadFromFile(extractfilepath(application.ExeName) + 'gamelist.dat');
for i:= 0 to gamelist.Count -1 do
begin
if gamelist [1] =#9 then
newitem.SubItems.add(Trim(gamelist))
else if gamelist[1]=' 'then
Iconindex:=trim(gamelist.Strings);
else
begin
Newitem:=gamelistview.Items.Add;
Newitem.Caption:=gamelist;
newitem.ImageIndex:=getfileiconindex(iconindex);
end;
end;
finally
end;
end;

为什么这段代码每次都不添加gamelist.dat中的最后一项..
 
procedure TF_main.Button1Click(Sender: TObject);
var
i,k:integer;
gamelist:Tstringlist;
newitem:Tlistitem;
Iconindex:string;
begin
imagelist1.Handle := ShGetFileInfo('', 0, SHFileInfo, SizeOf(SHFileInfo), SHGFI_LARGEICON or SHGFI_ICON or SHGFI_SYSICONINDEX);
newitem:=nil;
gamelistview.Items.Clear;
gamelist:=Tstringlist.Create;
Try
gamelist.LoadFromFile(extractfilepath(application.ExeName) + 'gamelist.dat');
for i:= 0 to gamelist.Count -1 do
begin
if gamelist [1] =#9 then
newitem.SubItems.add(Trim(gamelist))
else if gamelist[1]=' 'then
Iconindex:=trim(gamelist.Strings);
else
begin
Newitem:=gamelistview.Items.Add;
Newitem.Caption:=gamelist;
newitem.ImageIndex:=getfileiconindex(iconindex);
end;
end;
finally
end;
end;

为什么这段代码每次都不添加gamelist.dat中的最后一项..
 
你的循环有问题啊
 
你的if语句的匹配有问题吗?我感觉匹配混乱。仔细检查,最好全部写成复合语句。
if 条件 then
begin
语句
end
else
if 条件 then
begin
语句
end
else
begin
语句
end

 
兄弟,那是因为你的循环计数有问题。不能从0开始,而是应该从1开始,即for i:= 1 to gamelist.Count -1 do ...

 
eaglefly:真的吗
 
不对啊,改成1以后还是不行啊..大哥..
 
if gamelist [1] =#9 then
newitem.SubItems.add(Trim(gamelist))
else if gamelist[1]=' 'then
Iconindex:=trim(gamelist.Strings);
后面还有else 你最后加;干嘛,运行不报错真有你的
 
啥意思啊xf-wangyi大哥....不懂~???????
 
xf-wangyi是说else之前的‘;’是不能有的。
 
问题已经解决了.谢谢大家了.
 
后退
顶部