Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Урок 8. Добавляем второй таймер / Уроки MFC / Visual C++
Visual C++. MFC Урок 8. Добавляем второй таймер
Давайте теперь посмотрим, что мы должны сделать, если нам надо работать одновременно с двумя таймерами. Проблема здесь в том, что обработчик для таймера у нас один, но мы хотим производить разные действия при тиканьи одного таймера и при тиканьи другого. Для этого мы должны их как-то различать. Но у нас для этого служит идентификатор таймера (первый параметр в методе SetTimer). Его-то мы и используем.
Добавляем в программу ещё один таймер и сразу пишем код в деструкторе класса для уничтожения нового таймера:
Идентификатор нового таймера 2 , и он тикает раз в три секунды. Отдельный обработчик для второго таймера писать не надо. А надо изменить наш старый обработчик для таймера следующим образом:
У метода OnTimer есть параметр типа UINT. Мы его раньше не использовали, а теперь используем. Это и есть идентификатор таймера, для которого мы обрабатываем сообщение WM_TIMER. Если сообщение от первого таймера, то издаём сигнал, а если от второго, то меняем заголовок окна на "Title".
Запускаем программу. Звук раздаётся раз в секунду, и через три секунды заголовок окна меняется.