Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.21;
Скачать: CL | DM;

Вниз

Что же делать? Как мне быть?   Найти похожие ветки 

 
Феликс ©   (2002-10-10 14:43) [0]

Вообщем ситуация такая!
Есть код:
SL := TStringList.Create;
SL.LoadFromFile("Base/"+s+".txt");
Form1.RichEdit1.Lines.AddStrings(SL);
, где s имя txt файла. Таких txt файлов 6 и их общий вес 276 кб.
Проблема в том, что richedit грузит эти файлы 40-45 сек, что сами понимаете
очень долго. Казалось бы используй вместо richedit memo, например. Однако, в memo влазит не более 64 кб в Windows 9x, кроме того richedit хорош тем, что в нем можно осуществлять поиск, что очень важно для моей программы. Возникает вопрос: richedit долго грузит, memo не подходит, так что же делать? Грузить то файлы и осуществлять в них поиск все равно надо!!


 
Skier ©   (2002-10-10 14:47) [1]

>Феликс
А зачем TStringList ?
Так нельзя ? :


Form1.RichEdit1.Lines.LoadFromFile("Base/"+s+".txt");



 
still ©   (2002-10-10 14:47) [2]

попробуй делать richedit невидимым на время загрузки, мож это из-за перерисовки тормозит? могу ошибаться


 
gek ©   (2002-10-10 14:50) [3]

Зачем сначала в TStringList грузить?
И странно что так долго
У меня на P2 350 ~ 1 сек 1Мб
Form1.RichEdit1.Lines.LoadfromFile
Form1.RichEdit1.Lines.LoadFromStream


 
Song ©   (2002-10-10 14:50) [4]

Используйте BeginUpdate/EndUpdate


 
gek ©   (2002-10-10 14:50) [5]

Да и еще
Form1.RichEdit1.Lines.BeginUpdate
...............
Form1.RichEdit1.Lines.EndUpdate


 
Феликс ©   (2002-10-10 15:23) [6]

1)
Form1.RichEdit1.Lines.BeginUpdate;
SL.LoadFromFile("Base/"+s+".txt");
Form1.RichEdit1.Lines.AddStrin(SL);
Form1.RichEdit1.Lines.EndUpdate;
Похоже еще медленей стало :)
2)А зачем TStringList ?
Так нельзя ? :
Если бы вопрос был только об одном файле, то Form1.RichEdit1.Lines.LoadFromFile("Base/"+s+".txt"); конечно подойдет, а так как их 6 и их всех надо запихнуть в один richedit, то tstring то что доктор прописал.


 
gek ©   (2002-10-10 15:26) [7]

Ну сделай
Form1.RichEdit1.Lines.Add
и сам файл считывай
TStringList тут нечего делать


 
Феликс ©   (2002-10-10 15:40) [8]

2 gek ©
А можно по-подробней, да с исходником


 
gek ©   (2002-10-10 15:44) [9]

примерно так

assignfile(f,FileName);
reset(f);
try
Form1.RichEdit1.Lines.BeginUpdate;
while not eof(f) do
begin
readln(f,s);
Form1.RichEdit1.Lines.Add(s);
finally
Form1.RichEdit1.Lines.EndUpdate;
CloseFile(f);
end;

и так по всем files



Страницы: 1 вся ветка

Текущий архив: 2002.10.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.021 c
1-68858
KLOP
2002-10-10 15:15
2002.10.21
Не могу в DBGrid обработать двойной клик по записи


1-68827
Magic
2002-10-10 10:31
2002.10.21
Мониторинг системы


3-68668
SunnyTm
2002-09-30 22:28
2002.10.21
Когда нужны DBEdit и EditMask?


1-68746
NN_Nikita
2002-10-11 13:05
2002.10.21
вызов CoInitialize


14-69010
Dmitriy Polskoy
2002-09-30 10:11
2002.10.21
Нужны спрайты