Ich hab mich für einen etwas anderen Weg entschieden. Ohne die Anregungen wäre ich trotzdem nicht darauf gekommen, danke nochmals.
Code:
//Events auslesen (pro Buffer können 1-24 Events eingehen)
EventCounter := 0;
for row := 0 to (lst.Count -1) do
begin
if ((lst.Strings[row]).StartsWith('Event')) then
begin
if(Eventlst.Count = 0) then // Nur beim 1. Event true
begin
Eventlst.Add(lst.Strings[row]);
EventCounter := 1;
end
else
begin
handleEvent(Eventlst.Text); // Event handeln
Eventlst.Clear;
Eventlst.Add(lst.Strings[row]);
EventCounter := EventCounter+1;
end;
end
else
begin
Eventlst.Add(lst.Strings[row]);
end;
end;
// Falls nur 1 Event im Buffer
if (EventCounter = 1) then
begin
handleEvent(Eventlst.Text); // Event handeln
Eventlst.Clear;
end;