Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi BBCode Kompnente (https://www.delphipraxis.net/79026-bbcode-kompnente.html)

xZise 15. Okt 2006 13:31

Re: BBCode Kompnente
 
Zitat:

Zitat von r2c2
Ich nehm mal an TRichEdit kommt nicht mit klar, wenn du den Formatcode direkt reinschreibst. 2 Möglichkeiten:
- In n Stream schreiben und LoadFromStream
- mit Paragraph arbeiten
- Doch n TWebbrowser nehmen

@ Stream: Damit habe ich noch net so viel gearbeitet... Nur muss ich den Stream abspeichern?
@ Paragraph: VErstehe ich nicht...
@ TWebbrowser: 1. Habe ich nicht und 2. müsste ich es zwischenspeichern, was ich vermeiden will!

Zitat:

Zitat von r2c2
//Nachtrag:
Zitat:

Zitat von xZise
Zitat:

Zitat von r2d2
BTW: Warum nimmst du nicht gleich Lines.Text?
[...]

Warum nicht :D

[edit]Also das hat nicht das Problem gelöst :([...]

War nur n Hinweis nebenbei. for-Schleife und Lines is nicht falsch, nur gehts mit Text einfacher...
BTW: Ich nenne mich r2c2...

@ Text: Mit und ohne Text und auch mit oder ohne Zwischenspeichern: Er meckert rum... Aber wenn ich den Text direkt beim erstellen in den CodeEditor eingebe, gehts... ( :wiejetzt: )
@ r2c2: sry :D Ich sag ja: Zitatsplittenmöglichkeit


Zitat:

Zitat von Jelly
Von TMS gibts noch THTMLStaticText. Ist nicht direkt BBCode sondern html, aber das Umwandeln von BBCode in HTML sollte wirklich nicht allzu schwer sein.

1. Ist die kostenlos?
2. Findet er die vlcdb (o.s.ä.) nicht

Zitat:

Zitat von Daniel
Was Fertiges gibt es zum Beispiel von den WPTools. Die können die Standard-BBCodes parsen und entsprechend darstellen.

Ansonsten ist halt schon wie vorgeschlagen Handarbeit mit einen RichEdit fällig. Oder Du bettest ein Browser-Control ein.

Also ich habe da nichts gescheites gefunden... Wo finde ich das denn? Ich habe zwar nach den WPTools gegooglet, aber da gibts keine BBCode-Komponente. (Das habe ich ergooglet)

Flocke 15. Okt 2006 13:37

Re: BBCode Kompnente
 
Zitat:

Zitat von r2c2
Ich nehm mal an TRichEdit kommt nicht mit klar, wenn du den Formatcode direkt reinschreibst.

Genau. Du kannst RTF nicht häppchenweise hineinfüttern. Arbeite doch der Einfachheit halber erst einmal mit einem String, an den du die einzelnen Fragmente einfach mit + anhängst. Abschließend setzt du den Text mit
Delphi-Quellcode:
RichEdit1.Perform(WM_SETTEXT, 0, Integer(PChar(Str))
Ebenfalls wichtig:
1. Ersetze alle \, { und } durch \\, \{ und \}
2. Ersetze alle Zeilenumbrüche durch \par
Danach kannst du dich um die Formatierung kümmern, dies muss aber nicht zeilenweise geschehen, du kannst das StringReplace einfach auf mChangeLog.Lines.Text loslassen.

// NACHTRAG

Außerdem solltest du hinter den RTF-Steuerzeichen jeweils ein Leerzeichen lassen, also
'[ b]' wird zu '\b '
'[ /b]' wird zu '\b0 '
'[ i]' wird zu '\i '
'[ /i]' wird zu '\i0 '
Die meisten Formatierungen kann man mit 0 (Null) dahinter wieder ausschalten. Dann sparst du dir die Klammern, die würden sowieso Fehler geben wenn der BBCode nicht korrekt geschachtelt ist.

Flocke 15. Okt 2006 13:37

Re: BBCode Kompnente
 
Sorry, falscher Button :oops:

r2c2 15. Okt 2006 13:44

Re: BBCode Kompnente
 
Zitat:

Zitat von xZise
@ Stream: Damit habe ich noch net so viel gearbeitet... Nur muss ich den Stream abspeichern?

N MemoryStream nicht...

Zitat:

@ Paragraph: VErstehe ich nicht...
So macht man eigentlich die Formatierungen im RichEdit: TRichEdit.Pragraph(und TextAttributes IMHO)...

Zitat:

@ TWebbrowser: 1. Habe ich nicht und 2. müsste ich es zwischenspeichern, was ich vermeiden will!
TWebBrowser is n ActiveX-Control, das du ganz einfach importieren kannst: Komponente->ActiveX importieren->MS Internet Controls->OK->Installieren (IIRC) Kannst ja mal danach suchen. Würd die Sache deutlich einfacher machen...

mfg

Christian

arbu man 15. Okt 2006 14:08

Re: BBCode Kompnente
 
Zum webbrowser abspeichern:

Mit about:<quelltext> kanst du html über die URL im browser anzeigen

xZise 25. Okt 2006 13:42

Re: BBCode Kompnente
 
Ich melde mich nochmal :D
Und zwar habe ich jetzt das von TMS gedownloadet (Diese Komponente), aber ich kriegs nicht hin, das zu installieren :( Er nennt mir folgenden Fehler:
Zitat:

[Fatal Error] htmlStaticTextpkgd7.dpk(32): Required package 'vcldb' not found


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:22 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz