Hallo,
hm ... diese "abschließende Leerzeile" wird nur dann angehängt, wenn nach Clear mit Append die erste Zeile im RichEdit gesetzt wird.
Nachfolgende Append fügen weitere Zeilen vor dieser abschließenden "Leerzeile" ein.
Löscht man die "abschließende Leerzeile" nach dem ersten Anlegen der Zeile(n), fügt dann weitere Zeilen mit Append an, gibt es keine "abschließende Leerzeile" mehr.
Hab den Code aus dem Eröffnungs-Beitrag erweitert, "abschließende Leerzeile" wird gelöscht, aber nur beim ersten Einfügen:
Delphi-Quellcode:
Procedure SetRTFText(Const cRTFText : String );
Begin
Editor.Lines.Clear ;
CurrText.Name := DefFontData.Name;
CurrText.Size := 12 ;
Editor.Lines.Append( cRTFText );
Editor.Selstart := Editor.Selstart -2;
Editor.SelLength := 2;
Editor.ClearSelection;
//weitere Zeilen mit Append ... oder durch Anwender
End ;
Alternativ bietet sich auch das direkte Setzen von RichEdit.Text an, es erzeugt keine "abschließende Leerzeile" und Clear kann man sich auch sparen:
Delphi-Quellcode:
Procedure SetRTFText(Const cRTFText : String );
Begin
CurrText.Name := DefFontData.Name;
CurrText.Size := 12 ;
Editor.Text := cRTFText;
//weitere Zeilen mit Append ... oder durch Anwender
End ;