Ok, DateUtils hab' ich bei D5 noch nicht dabei...
Erster Monat/Jahr und aktueller Monat Jahr sollte (mit meinem Beispiel oder sonstigen Funktionen) gegeben sein.
z.B. 11 2008 und 01 2009
Schleife: Monat erhöhen, wenn Monat 13 dann Monat 01 und Jahr +1
Schleifenabbruch: Monat Jahr > aktuell
Delphi-Quellcode:
// decodeDate mit Now
MonatAktuell := Month;
JahrAktuell := Year;
// decodeDate mit Now - 120
Monat := Month; // Zuweisung natürlich unnötig, da man direkt
Jahr := Year; // mit Month/Year als Variablen arbeiten kann
MonatsListe.Clear; // z.B. eine TStringList
while (MonatAktuell <= Monat) and (JahrAktuell <= Jahr) do
begin
MonatsListe.Add( IntToStr(Monat) +'.'+ IntToStr(Jahr));
Monat := Monat +1;
if Monat >= 13 then
begin
Monat := 1;
Jahr := Jahr +1;
end;
end;
Kann es hier nicht Testen, ist vieleicht auch umständlich? Aber sollte auf die Art funktionieren.