Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как принудительно сделать рефреш окна. [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;


Наверх

Титульная страница Поиск, карта сайта Написать письмо