Ich suche in einem TRichEdit nach einem Text und markiere die Fundstellen mit roter, fetter Schrift
Für jeder Fundstelle:
Delphi-Quellcode:
RichEdit.SelStart:=Fundstelle;
RichEdit.SelLength:=Länge des gefundenen Texts;
RichEdit.SelAttributes.Style:=[fsBold];
RichEdit.SelAttributes.Color:=clRed;
Wenn ich danach eine zweiter Suche durchführe, bleiben die Markierungen der ersten Suche enthalten.
Um die Markierungen der ersten Suche vor der zweiten Suche zu entfernen mache ich
Delphi-Quellcode:
var Temp:TStringList;
begin
Temp:=TStringList.Create;
Temp.Assign(RichEdit.Lines);
RichEdit.Clear;
RichEdit.Lines.Assign(Temp);
Temp.Free;
end;
Frage:
Gibt es eine elegantere Methode, sowas wir SelAttributes.Clear ?
Überall wo ich gesucht habe gab es immer nur Beispiele, wie man etwas markiert, aber keine Info, wir man existierende Markierungen entfernt.