![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как принудительно сделать рефреш окна. [D4, Win95/98]
AndreyS © (2002-04-28 11:22:00)Вопрос на конкретном примере для краткости. Пусть в отработчике кнопки длинный вычислительный
процесс. На каких то этапах я получаю значения и хочу вывести их в Edit для отображения на форме.
А процесс расчета при этом продолжается(пусть вообще цикл стоит), но я хочу чтобы цифры были видны
сразу по их получению . И вообще чтобы они "бегали" в Edit по мере вычисления . Тоесть типа ProgressBar.
Один способ я знаю, но нужен максимально короткий красивый и понятный, желательно без горождения
потоков.
Заранее спаибо за ответ.
AndreyS (2002-04-28 11:59:00) [1]Спасибо большое. Попробую.
MBo (2002-04-28 11:50:00) [2]в твоем цикле вставляешь этот оператор, дающий возможность Windows обработать сообщения, скажем, после вывода в Edit. Это замедляет вычисления, так что при возможности надо пореже, например
for i:=1 to 1000 do begin
for j:=1 to 10000 do begin
...
end;
edit1.text:=...
Application.ProcessMessages;
end;
AndreyS (2002-04-28 11:41:00) [3]Спасибо. А можно чуть подробнее. Примерно понятно, но я пока в "трех соснах" в Делфи путаюсь.
Вероятно, я и так дойду, но времени убью много. Если не сложно
MBo (2002-04-28 11:30:00) [4]Application.ProcessMessages;