Ich habe mir eine Funktion geschrieben, die alle Wörter aus einer Liste in einem RichEdit markiert:
Delphi-Quellcode:
function MarkWords(RichEdit: TRichEdit; Words: TStrings; FontStyle: TFontStyle;
Color: TColor): Cardinal;
var
i: Integer;
LastWordPos: Integer;
begin
LastWordPos := 0;
for i := 0 to Words.Count - 1 do
begin
while LastWordPos < 500 do
begin
LastWordPos := FindWord(LastWordPos, RichEdit.Text, Words[i]);
RichEdit.SelStart := LastWordPos;
RichEdit.SelLength := length(Words[i]);
RichEdit.SelAttributes.Color := Color;
RichEdit.SelAttributes.Style := [FontStyle];
LastWordPos := LastWordPos + 1;
end;
LastWordPos := 0;
end;
RichEdit.SelStart := 0;
result := 0;
end;
Aufruf mit
MarkWords(RichEdit1, sl, fsBold, clRed);
Wie bekomme ich es jetzt hin, dass ich gleich mehrer Styles (fsBold, fsItalic) zuweisen kann? Und wie hebe ich es wieder auf?