Ich glaube sogar, so blöd es klingt, Larsis Code funktioniert bis auf den Startindex:
Delphi-Quellcode:
var
i: Integer;
g: integer;
begin
g := 1; // was das soll weiß nur Larsi, eine 0 könnte ich noch verstehen
// er geht in einer Schleife alle Einträge durch ...
for i := 0 to Listview1.Items.count - 1 do
begin
// ... prüft nach dem Konvertierungs-Gewurschtel von "Now" ob die Einträge in der Zukunft liegen ...
if StrToDate(DateToStr(Now)) < StrToDate(Listview1.Items.Item[i].SubItems.Strings[0]) then
begin
// ... und dann, ob der Eintrag, der in der Schleife überprüft wird,
// kleiner ist als der Index des Minimum-Eintrags (Index g) ...
if StrToDate(Listview1.Items.Item[i].SubItems.Strings[0]) < StrToDate(Listview1.Items.Item[g].SubItems.Strings[0]) then
// ... und setzt den neuen Min-Index falls der Listeneintrag kleiner ist
g := i;
end;
end;
ShowMessage(Inttostr(g));
end;
Was für eine Lösung, die ist reif für die Code-Library.
Edit: Kommentare angepasst.