Ich verstehe hier das Problem nicht so wirklich muss ich gestehen. Um die konkrete Frage zu beantworten: Ja, man kann natürlich im Timer-Event auch eine Schleife nutzen. Das hätte man aber auch ausprobieren können. Ich vermute hier aber eigentlich eine andere Fragestellung, nur leider fehlt diese und wir müssten raten.
In etwa so:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var
aTime,bTime: TDateTime;
str:string;
begin
aTime := Time;
{Timerintervall ist 1000 Kann ich hier die gesamten Intems in einer Sekunde durchgehen?}
for i := 0 to (Listbox1.count-1) do
begin
bTime:= TrimLeft(copy(Listbox1.Items[i],1,8)); //<- (13:50:00 Blabla)
If aTime >= bTime then
begin
inc(iFlag); //<- global
if iFlag = 1 then
begin
Label4.Caption:= Listbox1.items[i];
iFlag:=0;
end;
end;
end;
end;
Gibt es da keinen besseren Ansatz?