Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: Richedit/Memo "nachprogrammieren"

  Alt 31. Jul 2005, 11:22
Zitat von fkerber:
Hauptknackpunkt ist, dass ein Memo bzw. Richedit CR und LF nicht richtig interpretiert.
RichEdits können das, so weit ich weiß. Habe ich jetzt nicht getestet, aber z.B. zeigt WordPad eine Unix-Textdatei korrekt an, die für Notepad nur aus einer einzigen Zeile besteht.

Wenn du schon eine eigene Komponente machen willst, dann ersetze doch einfach nur die Routine LoadFromStream so, dass LFs korrekt interpretiert werden.

Anderer Ansatz wäre z.B. die Meldungen WM_SETTEXT/EM_REPLACESEL zu überschreiben und hier die LF -> CR/LF Behandlung einzubauen. Also WM_SETTEXT(Text) wird einfach zu EM_SETSEL(0,-1)+EM_REPLACESEL(Text) und in EM_REPLACESEL baust du dann das ganze modifizierte Handling ein.

[Nachtrag]

Habe gerade mal in die VCL-Quellen geschaut - normalerweise sollte auch ein TMemo mit CR/LF oder nur CR oder nur LF umgehen können (ungetestet). Wenn's um das Speichern geht: da müsstest du nur vorher
Code:
Memo1.Lines.LineBreak := #10;
setzen und die Datei wird im Unix-Format abgespeichert.
Volker
  Mit Zitat antworten Zitat