Hallo Leute
Ich hab Mir eine Procedur geschrieben die Mir bestimmte Wörter Fett und Blau anzeigt,
Soweit klappt das auch zwischen den Reservierten Wörtern wird wieder normal geschrieben.
Jetzt mein Problem hinter dem letztem reservierten Wort wird wieder in Fett Blau geschrieben was
nicht sein sollte.
Hätte jemand eine Idee dazu - Wie kann Ich die Selattribute im Rich wieder zurücksetzen ?
Delphi-Quellcode:
var
Form1: TForm1;
Reserviert: array[0..2] of string =('end', 'begin', 'test');
implementation
{$R *.dfm}
procedure ReserviertBold(RichEdit1: TRichedit);
var
i,j:Integer;
Bold, Str: String;
begin
with RichEdit1 do
begin
for i:=0 to Length(Text) do
for j:= 0 to High(Reserviert) do
begin
Bold:= Uppercase(Reserviert[j]);
Str:= Uppercase(Copy(Text, i, Length(Bold)));
Text:=StringReplace(Text,Bold,Uppercase(Bold),[rfReplaceAll, rfIgnoreCase]);
if (Uppercase(Str) = Uppercase(Bold)) then
begin
SelStart:= i-1;
Sellength:= Length(Bold);
SelAttributes.Color := clBlue;
SelAttributes.Style:= [fsbold] end else begin
SelStart:= i-1;
SelAttributes.Color := clBlack;
SelAttributes.Style:= [];
end;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ReserviertBold(RichEdit1);
end;