Startseite ¦  was ist neu ¦  programmier tips ¦  indy artikel ¦  intraweb artikel ¦  informationen ¦  links ¦  interviews ¦  sonstiges
kylix ¦  tutorials ¦  online shop ¦  fotos ¦  Add&Win Gewinnspiel


Willkommen Gast. Bitte einloggen oder registrieren.
22.05.2012, 12:38:02
Übersicht Hilfe Suche Einloggen Registrieren

+  SwissDelphiCenter Forum
|-+  German Forums
| |-+  Allgemeines Forum
| | |-+  Kleines Problem mit For - To Schleife :-(
« vorheriges nächstes »
Seiten: [1] Drucken
Autor Thema: Kleines Problem mit For - To Schleife :-(  (Gelesen 1121 mal)

Gast
« am: 03.03.2003, 23:41:59 »

Jetzt hab ich gedacht das ich das Problem behoben hab, jetzt hab ich einen neuen Fehler beim ausführen meines Programms.


Code:

{ ... }



 if fehler > 0 then

  begin

  for ii:=0 to ListView1.Items.Count -1 do

  begin

   if ListView1.Items[ii].SubItems[1] = 'Beendet' then

   begin

    Listview1.Items.Delete(ii);

    Statusbar1.Panels[1].Text := IntToStr(Listview1.Items.Count)+' Datei(en)';

   end;

  end;



{ ... }




Sobald in der Column die ich überprüfe (...if ListView1.Items[ii].SubItems[1] = 'Beendet' then...) 'Beendet' stehen habe, bekomme ich diesen Fehler.

[img src="http://www.pa-soft.de/images/uwe.error.jpg" border="0" alt="IPB Image" /]

Ich muss dazusagen das bereits eine for - to Schleife über diesem Code steht, diese ist aber schon abgeschlossen, vielleicht liegt es ja daran ?

Jedenfalls bekomme ich, sobald da nur 1 Item in meiner Listview ist was in der besagten Column 'Beendet' stehen hat, diesen Fehler. Ist vielleicht was an meinem Code falsch ? Darf man das so , wie es in meinem code steht, nicht überprüfen ?

Ich bin ratlos...

Vielleicht ist es ja nur ein kleiner dummer Fehler, hoffe ich...

MrDelphi
Gespeichert
Rainer
Hero Member
*****
Offline Offline

Beiträge: 1666


WWW
« Antworten #1 am: 03.03.2003, 23:53:04 »

Du löscht also mindestens ein Item aus der ListView. Da die For-Schleife nur einmal zu Beginn den maximalen Wert berechnet, versuchst Du also dann auf ein nicht mehr existierendes Items zuzugreifen.
Du kannst nun entweder (wenn die Reihenfolge der Abarbeitung nicht wichtig ist) die For-Schlief rückwärts laufen lassen (downto) oder Du stellst z.B. auf eine While-Schleife um.
Gespeichert

MfG Rainer

end.

Gast
« Antworten #2 am: 04.03.2003, 00:07:24 »

Achso, ja, wenn man es so betrachtet hast du natürlich Recht. Also mit der DownTo Schleife funktioniert es wunderbar.

Also dann, herzlichen Dank für deine Hilfe und einen schönen Abend noch.

Gruß,
MrDelphi
Gespeichert
Seiten: [1] Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC Prüfe XHTML 1.0 Prüfe CSS