ListCtrl löschen
-
Guten Tag
Warum klappt das so nicht,es wird nur der erste Eintrag
gelöscht,ich möchte aber ein komplett leeres ListCtrl Feld.
Oder gibt es ein Reset für ListCtrl.//ListCtrl Feld loeschen for(int i=0; i< 10; ++i) { m_ListCtrlA.DeleteItem(i); }
-
Dies geht jetzt
m_ListCtrlA.DeleteAllItems();Würde mich aber trotzdem interessieren warum das nicht geht.
//ListCtrl Feld loeschen for(int i=0; i< 10; ++i) { m_ListCtrlA.DeleteItem(i); }
-
bingo schrieb:
Warum klappt das so nicht,es wird nur der erste Eintrag
Nein, es wird jeder zweite Eintrag gelöscht. Du hast nicht bedacht, dass beim Löschen die darunterliegenden Einträge nach oben rutschen -> von hinten löschen.
Oder gibt es ein Reset für ListCtrl.
DeleteAllItems
-
Danke
So gehts,das andere ist aber schöner.
for(int i=0; i< 10; ++i) m_ListCtrlA.DeleteItem(0);
-
m_ListCtrlA.DeleteAllItems();
Tester2
-
OK, nehme alles zurück. Konnte anscheinend nicht lesen.
Tester2
-
Hallo,
das könnte doch auch so funktionieren:
while(0 < pList->GetItemCount()) { pList->DeleteItem(0); }
Oder?
grüsse
pixel
-
pixel schrieb:
Oder?
Doch, das würde funktionieren. Es ist aber vermutlich langsamer, als von hinten zu löschen, weil dann nichs verschoben werden muss.
Und es ist natürlich viel komplizierter als DeleteAllItems.