Einzelnen Beitrag anzeigen

Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#5

Re: RichEdit, RTF, Leerzeile wird immer angehängt

  Alt 19. Okt 2009, 19:49
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 ;
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat