Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Bestimmtest Wort in RichEdit hervorgeben

  Alt 25. Jul 2006, 13:46
Hallo Christian,

ein erster Ansatz könnte so aussehen:

Delphi-Quellcode:
procedure TDemoForm.RichEditChange(Sender: TObject);
var
  iStart, iLength: Integer;
  ida: TIntegerDynArray;
  i: Integer;
  sText: String;
begin
  sText := 'Hallo';
  with RichEdit do
  begin
    LockWindowUpdate(Handle);
    iStart := SelStart;
    iLength := SelLength;
    SelStart := 0;
    SelLength := MaxInt;
    SelAttributes.Assign(DefAttributes);
    ida := FindAll(Lines.Text, sText);
    for i := Low(ida) to High(ida) do
    begin
      SelStart := Pred(ida[i]);
      SelLength := Length(sText);
      SelAttributes.Color := clRed;
      SelAttributes.Style := [fsBold];
    end;
    SelStart := iStart;
    SelLength := iLength;
    LockWindowUpdate(0);
  end;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat