Как добавить RTF-строку в RichEdit? - PullRequest
0 голосов
/ 17 марта 2012

Я работаю с RichEdit и добавляю в него строки, содержащие разные цвета.Теперь я использую этот подход:

LogRichEdit.Lines.Add(someText);
...
LogRichEdit.SelStart:=res+8;
LogRichEdit.SelLength:=4;
LogRichEdit.SelAttributes.Color:=clSilver;

, где res - позиция текста для форматирования.Неважно, что.У меня проблема в том, что когда я добавляю эту строку, а затем редактирую ее, она мерцает (выбирая и отменяя выделение текста).Как я могу работать с ним лучше?Я думал, что могу иметь какую-то переменную rtf-string, делать с ней свои вещи, а затем .add это с RichEdit.Или

1 Ответ

2 голосов
/ 17 марта 2012

Вы должны быть в состоянии избежать мерцания, используя BeginUpdate / EndUpdate.

RichEdit.Lines.BeginUpdate;
try
  // make modifications to RichEdit.Lines
finally
  RichEdit.Lines.EndUpdate;
end;

Вызов BeginUpdate подавляет обновления пользовательского интерфейса до вызова EndUpdate.

...