На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
  
> OnTimer при потере фокуса
Всем привет!

Кому довелось разобраться с внутренним механизмом организации обработчика OnTimer(), расcкажите, pls,
какие сообщения и кому посылает система при наступлении события от таймера.

Особенно интересно, что делает система, когда форма на которой "лежит" таймер теряет фокус.

У меня такое ощущение, что при потере фокуса, события от таймера начинают сыпаться в адрес активного окна.
Разобрался.

WM_TIMER от фокуса не зависит. Сообщение всегда посылается окну, которое создало таймер, вызов обработчика тоже однозначно задан адресом при регистрации таймера (см. callback).

Из-за некорректной обработки события OnPaint в форме, которая ловила фокус возникал вечный цикл, непрерывно сыпались WM_PAINNT, не оставляя времени для работы таймера, поэтому складывалось впечатление, что таймер стал работать на другую форму.
0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
0 пользователей:


Рейтинг@Mail.ru
[ Script Execution time: 0,0667 ]   [ 23 queries used ]   [ Generated: 22.06.18, 05:07 GMT ]