Thema: Delphi Problem mit TListItem

Einzelnen Beitrag anzeigen

Alois

Registriert seit: 23. Jul 2005
71 Beiträge
 
Delphi 10 Seattle Professional
 
#1

Problem mit TListItem

  Alt 27. Jul 2005, 14:53
Ich habe in einer ListView eine Spalte mit einem Icon gespeichert.

Wenn ich nichts in der Liste markiert habe soll sich das Icon in
Abhängigkeit von seinem vorigen Status Zeile.ImageIndex <> 1 in
den Status Zeile.ImageIndex := 0; wechseln. Ist ein Eintrag in
der Liste markiert ist, wird die markierte Zeile geändert. Der Programm-
abschnitt mit markierter Zeile funktioniert.

Aber leider funktioniert der unten abgedruckte Code nicht.
Das Problem ist die Repeat/Until Schleife. Sobald ich die Anweisung
(Zeile.ImageIndex <> 1) ausführe gibt es einen Fatalen Fehler.

Warum?????

Gruss Alois
Delphi-Quellcode:
procedure TfrmMain.btnNeustartClick(Sender: TObject);
var
   Zeile, ZeileSel: TListItem;
   i: integer;
begin
     // Wurde irgendeine Zeile selektiert?
     ZeileSel := lvwQueue.Selected;
     Zeile := lvwQueue.Items.Item[0];

     if (Zeile = nil) and (ZeileSel = nil) then
        exit;

     i := lvwQueue.Items.Count;
     repeat
       Zeile := lvwQueue.Items.Item[i];
       i := i - 1;
     until (i = -1) or (Zeile.ImageIndex <> 1);

     if (ZeileSel <> nil) and (ZeileSel.ImageIndex <> 1) then
        Zeile := ZeileSel;

     Zeile.ImageIndex := 0;
end;
  Mit Zitat antworten Zitat