Delphi:简单地突出显示SynEdit中的文本

时间:2011-07-17 00:30:44

标签: delphi highlighting synedit

我有20个不同的词。如何在SynEdit中突出显示具有不同颜色的单词的行?如果无法突出显示行,则只需突出显示单词。

非常感谢!!!!!!

1 个答案:

答案 0 :(得分:7)

要突出显示一行,您必须使用OnSpecialLineColors事件。您可以创建一个函数来查找该行中的单词(查看此问题Is There An Efficient Whole Word Search Function in Delphi?)然后绘制该行

检查此代码

procedure TFrmMain.SynEditCodeSpecialLineColors(Sender: TObject;
  Line: integer; var Special: boolean; var FG, BG: TColor);
begin
  If LineContainsWord(Line) then //here check if the word is in the line
  begin
   FG      := clYellow; //Text Color
   BG      := clBlue; //BackGround
   Special := True; //Must be true
  end;        
end;