![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Объясните, пожалуйста, на пальцах
где и когда использовать вызов Application.ProcessMessages и зачем это нужно в XP, ведь это вроде многозадачная ОС. Или киньте ссылкой. Хочется также узнать, что делать, если у программы нет ни одного окна (например, это dll), но есть большой цикл, нужно ли тогда использовать subj. |
|
#2
|
||||
|
||||
|
Читаем справку:
Цитата:
Цитата:
Метод ProcessMessages останавливает выполнение приложения для того чтобы обработать очередь сообщений. Когда очередь становится пустой управление передается приложению. Использовать его стоит в длинных циклах и тому подобных ресурсоемких местах приложения. |
|
#3
|
|||
|
|||
|
Спасибо, справку я читал. То, что нужно вставлять subj в циклах я знаю. Возможно, я не так сформулировал вопрос. Попробую еще раз. Класс TApplication используется для "GUI windowed application". Соответственно если у меня просто программа без формы, то и класс это не используется. Как тогда быть с ProcessMessages?
И что значит: "останавливает выполнение приложения, для того чтобы обработать очередь сообщений". Т.е. если очередь не остановить, система работать не сможет. Сможет. А вот окно приложения перерисовать не сможет. Но если нет окна приложения, то, что тогда, будет с очередью? |
|
#4
|
||||
|
||||
|
Если нет окна - нет и очереди
|
|
#5
|
|||
|
|||
|
Спасибо. Кажется доперло.
|