Активизация окна


Когда пользователь щелкает по неактивному окну верхнего уровня или дочернему окну неактивного окна верхнего уровня, система отправляет (среди других) сообщение WM_MOUSEACTIVATE верхнего уровня или дочернему окну. Система отправляет это сообщение после отправки сообщения WM_NCHITTEST в окно, но перед отправкой сообщения о нажатии кнопки. Когда WM_MOUSEACTIVATE передается в функцию DefWindowProc, система активизирует окно верхнего уровня, а затем посылает сообщение о нажатии кнопки окну верхнего уровня или дочернему окну.

Обрабатывая WM_MOUSEACTIVATE  окно может управлять тем, что становится активным окном, либо окном верхнего уровня в результате щелчка кнопки мыши,  либо окном которое принимает  щелчок как сообщение о  последующее  нажатии кнопки. Окно делает так, при возвращении одного из ниже перечисленных значений после обработки WM_MOUSEACTIVATE.

Значение Предназначение
MA_ACTIVATE Активизирует окно и не сбрасывает сообщение мыши.
MA_NOACTIVATE Не активизирует окно и не сбрасывает сообщение мыши.
MA_ACTIVATEANDEAT Активизирует окно и сбрасывает сообщение мыши.
MA_NOACTIVATEANDEAT Не активизирует окно, но сбрасывает сообщение мыши.

Назад в оглавление
На главную страницу

Hosted by uCoz