为什么listbox最后多出一个数
想向listbox内赋值0到九,结果最后多出一个九来,不知什么原因!
procedure TForm1.Button5Click(Sender: TObject);
var
i:integer;
a:array[0..9] of integer;
begin
i:=0;
listbox3.Clear;
while i<=9 do
begin
a[i]:=i;
listbox3.Items[i]:=inttostr(a[i]);
listbox3.Items.Add(listbox3.Items[i]);
i:=i+1;
end;
end;
[解决办法]
procedure TForm1.Button5Click(Sender: TObject);
var
i:integer;
a:array[0..9] of integer;
begin
i:=0;
listbox3.Clear;
while i<9 do
begin
a[i]:=i;
listbox3.Items[i]:=inttostr(a[i]);
listbox3.Items.Add(listbox3.Items[i]);
i:=i+1;
end;
end;
这样正好
[解决办法]
listbox3.Items[i]:=inttostr(a[i]);
listbox3.Items.Add(listbox3.Items[i]);
看错了,不好意思
是这2句是重复了,后面再add加了一行.后面这句不要,或者改成这样:
listbox3.Items.Add(inttostr(a[i]));
[解决办法]
3楼是对的
listbox3.Items[i]:=inttostr(a[i]);
listbox3.Items.Add(listbox3.Items[i]);
重复了