Delphi: просто выделите текст в SynEdit - PullRequest
2 голосов
/ 17 июля 2011

У меня 20 разных слов.Как выделить строки с этими словами разными цветами в SynEdit?Если невозможно выделить строки, просто выделите слова.

Большое спасибо !!!!!!

1 Ответ

7 голосов
/ 17 июля 2011

Чтобы выделить строку, вы должны использовать событие 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;
...