Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

Re: Wie kann man bei einem Richedit die Hintergrundfarbe än

  Alt 9. Sep 2006, 10:34
Du musst einfach in dwEffects das Bit CFE_AUTOBACKCOLOR setzen (wenn das nicht deklariert ist dann nimm CFM_BACKCOLOR, das hat denselben Wert).

Erweiterte Version (AColor = clWindow oder clNone löscht die Hintergrundfarbe):
Delphi-Quellcode:
procedure RE_SetSelBgColor(RichEdit: TRichEdit; AColor: TColor);
var
  Format: CHARFORMAT2;
begin
  FillChar(Format, SizeOf(Format), 0);
  with Format do
  begin
    cbSize := SizeOf(Format);
    dwMask := CFM_BACKCOLOR;
    if (AColor = clWindow) or (AColor = clNone) then
      dwEffects := CFE_AUTOBACKCOLOR
    else
      crBackColor := AColor;
    Richedit.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
  end;
end;
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat