Zitat von
glkgereon:
woran liet das?
Woher soll man das wissen? Außer dir weiß niemand, welchen Weg die Programmausführung nimmt. Teste es halt alles ordentlich aus.
Beispiel:
Zitat von
glkgereon:
wie wenn man versucht auf Lst_done.Items[2] zuzugreifen obwohl die nur 1 eintrag hat....
Ganz sicher? Wann immer das "
if time-StrToTime(t[0])>0
then" ausgeführt wird, hängst du doch selber einen Eintrag an die Liste dran.
Delphi-Quellcode:
if time-StrToTime(t[0])>0 then
begin
if t[2]=Sound then Snd else
if t[2]=Messag then Msg(t[1]) else
if t[2]=Msg_Sound then Snd_Msg(t[1]);
Lst_done.Items.Add(Lst_todo.Items[i]); //<--- hier!
Lst_todo.Items.Delete(i);
end;
Wie oft trifft denn die if-Bedingung zu? Dann weißt du auch, wieviele Einträge die Lst_done mindestens hat.