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

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

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

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

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

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

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


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