Zitat von
Lannes:
Hallo,
der Code färbt alles in der Art '[ B]irgendwas[ /B]' rot und entfernt die Tags.
Der Code ist nicht optimiert, aber man kann die Vorgehensweise gut erkennen.
Delphi-Quellcode:
with RichEdit1 do
while FindText('[B]', 0, Length(RichEdit1.Text), [stMatchCase])<>-1 do
begin
//SelStart auf Anfang '[B]..' setzen
SelStart := FindText('[B]', 0, Length(RichEdit1.Text), [stMatchCase]);
//SelLength auf Ende(also +4) '...[/B]' setzen,
//durch Abzug von Selstart ist genau der String incl. Tags selectiert.
SelLength := FindText('[/B]', 0, Length(RichEdit1.Text), [stMatchCase])+4-Selstart;
//selectierten Bereich einfärben
SelAttributes.Color := clred;
//selectierten Bereich durch String ohne Tags ersetzen
SelText := Copy(RichEdit1.Text,SelStart+4,SelLength-7);
end;
vielen dank funktioniert super, nur ein problem bleibt da noch nähmlich wenn der benutzer [b] eingiebt
also b klein dann funktioniert das ganze natürlich nicht.
Warum funktioniert dies eigentlich nicht? :
while FindText('[B]'or'[b]', 0, Length(RichEdit1.Text), [stMatchCase])<>-1 do
Rein theoretisch müsste das doch gehen ? also kann ich nicht einfach
[edit]
achso ich habe jetzt gerade gesehen dass man bei findtext das ja einstellen kann...
muss ich nur noch rausfinden wie.
[/edit]
if a or b =
ich möchte ja nicht immer
if a =
if b =
vielen dank
greez headi