Форум: "Основная";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];
ВнизПочему замедляется работа процедуры? Найти похожие ветки
← →
MegaBonus (2004-10-24 23:52) [0]Доброе время суток! У меня такая проблема -
Существует процедура которая ищет в списке какие-то необходимые данные, в это время на панели два лейбла показывают - первый сколько всего в списке строк, а второй сколько уже найдено совпадений. Если не использовать отображение результатов работы процедуры с помощью этих лейблов, то время затрачиваемое процедурой на работу составляет ок. 1 секунды. А если использовать, то оно увеличивается почти до 10 секунд. Как сделать так чтобы и результаты отображались и время работы небыло таким большим?
← →
Palladin © (2004-10-24 23:59) [1]обновлять лейблы пореже
← →
4e6ypaTop _@(o,o)@_ © (2004-10-25 00:15) [2]Попробуй использовать не label.caption а например Form.caption
← →
TUser © (2004-10-25 10:57) [3]Прорисовка - это дело медленное. Рисуй не всегда, а иногда только, примерно так
for i:=0 to ... do
begin
if i mod 100 = 0 then // На каждой сотой итерации
begin
label1.caption:="...";
application.processmessages;
end;
end;
ИМХО - при таком раскладе, если все за секунду делается - отображать прогресс совершенно лишнее.
← →
MegaBonus (2004-10-25 12:29) [4]TUser © (25.10.04 10:57) [3]
Большое спасибо
← →
GuAV © (2004-10-25 12:50) [5]Я в такой ситуации сравнивал GetTickCount текущее значение со значением предыдущей прорисовки и рисовал когда разница больше 200.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.049 c