Dir fehlt schlicht und ergreifend eine
Zwischenvariable, die das Leben viel einfacher macht:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Item: TListItem;
i: integer;
Gesamt: double;
irgendwas : TIrgendwas; // die Zwischenvariable
begin
if form2.ShowModal = mrok then begin
Gesamt := 0;
ListView1.Items.BeginUpdate;
try
ListView1.Items.Clear;
for i := 0 to fObjects.Count - 1 do
begin
irgendwas := FObjects[i] as TIrgendwas; // ***
// jetzt kann man ganz bequem mit "irgendwas" weiterarbeiten
// der Code wird viel klarer und einfacher zu lesen
Item := ListView1.Items.Add;
Item.Caption := IntToStr(irgendwas.ErsteZahl);
Item.SubItems.Add(IntToStr(irgendwas.ZweiteZahl));
Gesamt := Gesamt + irgendwas.Summe; // nicht "FGesamt" sondern die lokale Variable "Gesamt"
Item.SubItems.Add(Format('%.0n €', [Gesamt]));
end;
finally
ListView1.Items.EndUpdate;
end;
end;
end;