Ok -> Close   Теперь необходимо написать код, с помощью которого будет производиться обработка сообщений от таймера">ResourceView->Optimizer resources –R->  


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

ResourceView->Optimizer resources –R-> 

Поиск

Запуск таймера осуществляется функцией CWnd::SetTimer, где первый параметр – идентификатор таймера, второй – период в миллисекундах, третий параметр указывает на функцию, которой могут непосредственно передаваться сообщения WM_TIMER, минуя очередь. Если в последний параметр передать NULL, то сообщения WM_TIMER будут размещены в очереди. Уничтожается таймер методом CWnd::KillTimer с идентификатором таймера в качестве аргумента.

 

Обработка сообщений таймера может быть приостановлена во время работы функций-обработчиков сообщений. К счастью, сообщения таймера не аккумулируются: Win32 не ставит сообщения таймера в очередь, если в ней уже есть одно сообщение от данного таймера. Понятно, что при таком способе работы с таймером запуск обработчика WM_TIMER происходит не слишком точно по времени, но для наших целей этой точности более чем достаточно.

 

Создадим таймер:

ResourceView->Optimizer resources –R-> 

Resource Symbols->New->Name:"ID_MY_TIMER"->Ok ->

Close

 

Теперь необходимо написать код, с помощью которого будет производиться обработка сообщений от таймера. Для начала, используя ClassWizard, добавим переменную типа CString для элемента управления IDC_STATICGOAL в класс CDFPDialog и присваиваем ей имя m_sCurrentGoal (по умолчанию она будет проинициализирована пустой строкой при запуске диалога, поэтому на экране элемент IDC_STATICGOAL будет изначально невидимым). Далее, создаем с помощью ClassWizard обработчик для сообщений WM_TIMER в этом же классе (при этом в качестве Object IDs выбираем сам класс CDFPDialog) – по умолчанию его имя будет OnTimer и изменяем код следующим образом:

 



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 44; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.156 (0.007 с.)