makierter text von TRicheEdit ändern
-
Hallo,
Ich habe mir aus der CBuilder hilfe , das suchen in einem RichEdit text rausgenommen.
void __fastcall TForm1::Button1Click(TObject *Sender) { FindDialog1->Position = Point(RichEdit1->Left + RichEdit1->Width, RichEdit1->Top); FindDialog1->Execute(); } void __fastcall TForm1::FindDialog1Find(TObject *Sender) { int FoundAt, StartPos, ToEnd; // Suche hinter aktueller Markierung beginnen (falls vorhanden). // Andernfalls am Textanfang starten. if (RichEdit1->SelLength) StartPos = RichEdit1->SelStart + RichEdit1->SelLength; else StartPos = 0; // ToEnd ist die Länge von StartPos // bis zum Textende in Steuerelement. ToEnd = RichEdit1->Text.Length() - StartPos; FoundAt = RichEdit1->FindText(FindDialog1->FindText, StartPos, ToEnd, TSearchTypes()<< stMatchCase); if (FoundAt != -1) { RichEdit1->SetFocus(); RichEdit1->SelStart = FoundAt; RichEdit1->SelLength = FindDialog1->FindText.Length(); } }
das klappt auch ganz gut, aber was ich jetzt gern noch wissen möchte ist wie kann ich den makierten text ändern? zb: wenn im RichEdit text "text" steht soll er "text" mit "Hallo" ersetzen.
-
Hi!
Guck dir mal von der Richedit "SelText" an
-
Bei den Examples gibt es ein besseres Beispiel. Auch der Umgang mit dem ReplaceDialog wird dort prima erschlossen.