[Delphi] ListBox kasowanie

0

Mam taki glupi problem... Chce usunac wszystkie elementy ListBox'a. Probowalem to zrobic w ten sposob:

for i:=0 to ListBox1.Items.Count do
begin
Listbox1.Items.Delete(i);
end;

Dalem to do akcji onClick buttona i co... I kasuje mi elementy po trzy. Czemu sie tak dzieje? Jak skasowac wszystkie itemy na raz?

pozdr.
Y@siu

email: [email protected] or [email protected]
www.gim7.ent.plnt.pl
tlen.pl: [email protected]

0

Listbox1.Clear; i po sprawie.

0

Listbox1.clear;

O to chodzilo ?? Jak o yto to prosze o poczytanie najpierw Helpa w delphi a jak ktos nie umie angielskiego ( Tak jak ja) to korzystac z pieknej Encyklopedii Delphi na tej stronie :)

Dopisane: Heh Sebek - Byles szybszy :)

0

Dzieki o to wlasnie chodzilo. A juz tak przy okazji. Czemu to co ja napisalem kasuje tylko 3 elementy?

pozdr.
Y@siu

0

for i:=0 to ListBox1.Items.Count do
begin
Listbox1.Items.Delete(i);
end;

Jeżeli już, to:

fot i:=ListBox1.Items.Count - 1 downto 0 do ListBox1.Items.Delete(i)

Ale Clear lepsze :)

0

Dzieki o to wlasnie chodzilo. A juz tak przy okazji. Czemu to co ja napisalem kasuje tylko 3 elementy?

pozdr.
Y@siu

Czemu po trzy to niewiem, wideć tak się złożyło.

Ale
for i:=0 to ListBox1.Items.Count do (odejmnij 1 bo zaczynasz od zera)
begin
Listbox1.Items.Delete(i);
end;
dla zbioru :
1 - item 0
2 - item 1
3 - item 2
4 - item 3
w pierwszum kroku usuwa 1 zostaje więc
2 - item 0
3 - item 1
4 - item 2
w drugim i = 1 więc usuwa 3 zostaje
2 - item 0
4 - item 1
w trzecim i = 2 więc usuwa... nic nie usuwa bo niem itema 2
i tak dalej

0

for i:=0 to ListBox1.Items.Count do
begin
Listbox1.Items.Delete(i);
end;

a tak tez mozna:
for i:=0 to ListBox1.Items.Count-1 do
begin
Listbox1.Items.Delete();
end;
:)

0

łups! troche nieudany powrot :)

for i:=0 to ListBox1.Items.Count-1 do
begin
Listbox1.Items.Delete(0);
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1