Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Для чего нужен ProcessMessages

Delphi , Синтаксис , Синтаксис

Для чего нужен ProcessMessages

Автор: Alexander Vozny

Заметка в СМИ: На Украине занялись переводом языка Бейсик, "GOTO" теперь звучит как "ПЫДИ НА".

Многие начинающие программисты не знают о методе Application.ProcessMessages() и сталкиваются с проблемами, которых не могут объяснить. Например хотим написать что-то на форме и через 5 секунд стереть.

Нужно сделать так:


procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption:='Started';
  Application.ProcessMessages();
  sleep(1000);
  Label1.Caption:='Finished';
end;

Попробуйте убрать Application.ProcessMessages() и 'Started' вы никогда не увидите, это связано с тем, что Windows ждет пока накопятся задачи в очереди а не выполняет их сразу, Application.ProcessMessages() заставляет выполнить все задачи которые накопились в данный момент. Подробнее читайте в Help.

Это также можно применить в таком примере:


procedure TForm1.Button1Click(Sender: TObject);
var
  i: integer;
begin
  for i:=1 to 100000 do
    Application.ProcessMessages();
end;

если не будет ProcessMessages() то пока крутится цикл мы не сможем сдвинуть или свернуть форму.

Статья Для чего нужен ProcessMessages раздела Синтаксис Синтаксис может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Синтаксис ::


реклама

::


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
29.11.2020 07:11:29/0.029612064361572/0