powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / RichEdit ...
6 сообщений из 6, страница 1 из 1
RichEdit ...
    #32214842
user_01
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите справиться со следующей проблемой:
Есть TStringList c 100000 строк текста и все это надо запихать в RichEdit. Если пихать все строки скопом, то есть задержка - хотелось бы от нее избавиться. Единственная мысли - писать в RichEdit порциями (например строк по 200).

В результате появляется вопрос:
1. как определить что пора отдавать следующую порцию?
2. как и какие сообщения надо обрабатывать?
...
Рейтинг: 0 / 0
RichEdit ...
    #32214851
Speaker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй пихать порциями в цикле, и в нем же поставить
Application.ProcessEvents. По идее, RichEdit будет доступен
для редактирования и параллельно будет наполняться данными.
Если, конечно, такой вариант приемлем.

P.S. Сам так не пробовал, но вроде должно работать :)
...
Рейтинг: 0 / 0
RichEdit ...
    #32214884
MW79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем-то можно было бы отвиснуть на событии OnSelChange, которое обрабатывается при перемещении курсора. А там - делать все необходимые загрузки/выгрузки текста. Но при этом могу сказать, что ScrollBar не будет отражать верного значения. :)
...
Рейтинг: 0 / 0
RichEdit ...
    #32217128
zDIV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у Вас есть код типа

Код: plaintext
1.
2.
3.
4.
5.
RichEdit.Lines.BeginUpdate;
try
  RichEdit.Lines.Text := StringList.Text;
finally
  RichEdit.Lines.EndUpdate;
end;

?
...
Рейтинг: 0 / 0
RichEdit ...
    #32217629
user_01
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
всем спасибо

to zDIV
пришел к такому же коду.
действительно работает намного быстрее чем копировать строками или вызвать RichEdit.Lines.AddStrings(....)
...
Рейтинг: 0 / 0
RichEdit ...
    #32218188
Hammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще лучше:

RichEdit.Lines.BeginUpdate;
try
RichEdit.Lines.Assign( StringList );
finally
RichEdit.Lines.EndUpdate;
end;
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / RichEdit ...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]