删除RichEdit中的突出显示

问题描述 投票:0回答:1

我使用以下代码突出显示RichEdit中的文本选择。

procedure TAFormatMain.BtHighLightTextClick(Sender: TObject);
const
  AColor = clYellow;
var
  Format: CHARFORMAT2;
begin
  FillChar(Format, SizeOf(Format), 0);
  with Format do
  begin
    cbSize := SizeOf(Format);
    dwMask := CFM_BACKCOLOR;
    crBackColor := AColor;
    RiEd.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
  end;
  RiEd.SelStart := RiEd.SelStart + RiEd.SelLength;
end;

任何人都可以告诉我如何删除突出显示或“无颜色”(相当于Microsoft Word中的无颜色)的颜色值。我在网上找不到关于这个主题的任何相关信息。

delphi highlight rtf richedit
1个回答
2
投票

要休息背景颜色集:

Format.dwEffects := CFE_AUTOBACKCOLOR;
Format.dwMask := CFM_BACKCOLOR; 

另见:CHARFORMAT2 structure

© www.soinside.com 2019 - 2024. All rights reserved.