Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi BB-Code Highlight mit Richedit (https://www.delphipraxis.net/10112-bb-code-highlight-mit-richedit.html)

KyroxX 11. Okt 2003 21:06


BB-Code Highlight mit Richedit
 
Also ich hab in nem Forum ne besondre Art von BB-Code -.-
Nun will ich, weil ich nicht immer den BB Code schreiben will, nen einfachen Editor bauen wo ich einfach den text makiere und z.B. Fett mache.

Ist mit Richedit ja kein Problem.
Nur wie bekomm ich es nun hin das Richedit kapiert das der Text den ich Fett geschrieben hab,
in einem "memo1" als Quellcode mit "[bold]Fett[/bold]" umgeben sein soll?

Also nochmal im Klartext:

Komponenten: Richedit1, Memo1

Nun schreibe ich in des Richedit1 den Text "Hallo" und mache diesen Fett.
Nun soll "Hallo" in Klartext als "[bold]Hallo[/bold]" in das Memo1 kopiert werden ;)

Er soll also quasi den Fetten Text erkennen und mit den [bold] [/bold] Tags umgeben...

Wie geht das? Oder geht das Überhaupt?

p.s.: Ich will keine andren Komponenten benutzen

Thx im vorraus :mrgreen:

Christian Seehase 12. Okt 2003 00:37

Re: BB-Code Highlight mit Richedit
 
Moin KyroxX,

da Du den Text fett machen kannst, wirst Du wohl SelAttributes kennen.
Du müsstest jetzt also den Text des RichEdit auslesen, dabei die Textattribute testen, und z.b., beim Beginn des Attributes "Fett", ein [BOLD] in's Memo schreiben, beim Ende dann eben [/BOLD].
Nur mal so als Ansatz, Du solltest natürlich nicht zeichenweise Übertragen, sondern dabei Blöcke raussuchen.

Willst Du erst den Text schreiben, und dann erst die Attribute hinzufügen, müsstest Du im Memo beim Berechnen der Position eines Tags natürlich bereits enthaltene Tags berücksichtigen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:16 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