Ich würde aber nicht ständig am Timer rumspielen.
Jedesmal wenn das Intervall geändert wird, oder wenn man das Enabled ändert, wird intern ein verstecktes Fenster erstellt und darauf ein Timer erzeugt. (bei Änderungen wird vorher alles wieder gelöscht)
z.B. Timer.Intervall auf 1000 und dann entspricht jede Phase der abgelaufenen Sekunde.
Delphi-Quellcode:
procedure TfrmMain.Timer1Timer(Sender: TObject);
begin
case Phase of
1: begin
//erstes Panel beschriften, sichtbar, Refresh
end;
5: begin
//zweites Panel beschriften, sichtbar, Refresh
end;
17: begin
//drittes Panel beschriften, sichtbar, Refresh
end;
x: begin
//beliebig erweiterbar
Timer1.Enabled := False;//und beim Letzen den timer ausschalten
end;
end;
inc(Phase);
end;