Wenn die Delphiversion Class-Helper unterstützt, dann ginge sowas, für alle Nachfahren von TStrings:
Delphi-Quellcode:
Type TStringsAddHelper = Class Helper for TStrings
Function TruncedAdd(Const S: String; MaxLines: Integer): Integer;
End;
Function TStringsAddHelper.TruncedAdd(Const S: String; MaxLines: Integer): Integer;
Begin
If MaxLines > 0 Then
While Count >= MaxLines do Delete(0);
Result := Add(S);
End;
z.B. maximal 1000 Zeilen:
Delphi-Quellcode:
SL := TStringList.Create;
SL.TruncedAdd('string', 1000);
// oder
Memo1.Lines.TruncedAdd('string', 1000);