Text kurzzeitig formatieren
Hallo,
ich habe einen String, der ungefähr wie folgt aussieht: str := 'Dies ist ein kursiver Text' Die HTML Klammern sollen genau das bewirken: Das Wort 'kursiver' soll kursiv dargestellt werden. Der Teil, der nicht eingeschlossen ist, bleibt unformatiert. Der Benutzer bekommt den String in einem Memofeld zusehen, dort leg ich den String rein. Wahrscheinlich funktioniert das Vorhaben nicht mit einem Memofeld. Zumindest habe ich bis jetzt keine Möglichkeit gefunden, den Text im Memofeld kurzzeitig zu formatieren. Hat jemand von euch eine Idee oder alternative VCL Komponente? |
Re: Text kurzzeitig formatieren
Guten Morgen Henning,
mit einem TMemo ist es ohne weiteres nicht möglich, dafür eignet sich jedoch ein TRichEdit sehr gut. Im SDC gibt's dazu einen entsprechenden Source: HTML in RTF umwandeln oder du schaust dir einmal Codewalkers BBCode-Parser für TRichEdit an und änderst diesen so ab, dass er mit HTML-Tags funktioniert. Grüße, Matze |
Re: Text kurzzeitig formatieren
Wenn es nicht editierbar sein soll ist selbst zeichnen wohl die schnellste Lösung.
|
Re: Text kurzzeitig formatieren
Zitat:
Danke euch beiden. |
Re: Text kurzzeitig formatieren
Hallo,
wenn es nicht ausschließlich mit Bordmitteln gehen muss, kann ich den HTML-Viewer von Dave Baldwin empfehlen. Dann reicht eine Zeile, um das Problem zu lösen:
Delphi-Quellcode:
Falls der Text auch bearbeitet werden soll, würde ich ein TMemo (alternativ: TSynMemo) und einen HTML-Viewer so aufeinander legen, dass immer nur eines der beiden Controls sichtbar ist. Mit einer Tastenkombination könnte man dann zwischen Bearbeitungs- und Anzeigemodus umschalten.
HTMLViewer.LoadFromString('Dies ist ein [i]kursiver[/i] Text');
Gruß Hawkeye |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz