1.23.1 Активное окно

Активное окно (active window) - окно верхнего уровня прикладной программы, с которым пользователь в настоящее время работает. Чтобы позволить пользователю легко идентифицировать активное окно, Windows помещает его вверху Z-последовательности и заменяет цвет его строки заголовка и рамки определенными системой цветами активного окна. Активным окном может быть только окно верхнего уровня. Когда пользователь работает с дочерним окном, Windows активизирует родительское окно верхнего уровня, связанное с дочерним окном.

Одновременно в системе может быть активным только одно окно верхнего уровня. Пользователь активизирует окно верхнего уровня, щелкая мышью по нему (или по одному из его дочерних окон) или используя комбинацию клавиш ALT+ESC или ALT+TAB. Прикладная программа активизирует окно верхнего уровня, вызывая функцию SetActiveWindow. В число других функций, которые могут заставлять Windows активизировать различные окна верхнего уровня, включены SetWindowPos, DeferWindowPos, SetWindowPlacement и DestroyWindow. Хотя прикладная программа может активизировать различное окно верхнего уровня в любое время, чтобы избежать запутывания пользователя, она поступает так только в ответ на действие пользователя. Прикладная программа использует функцию GetActiveWindow, чтобы найти данные о дескрипторе активного окна.

Когда активация переходит от окна верхнего уровня в одной из прикладных программ к окну верхнего уровня другой программы, Windows посылает сообщение WM_ACTIVATEAPP обеим прикладным программам, сообщая им об изменении. Когда активация переходит среди различных окон верхнего уровня в той же самой прикладной программе, Windows посылает обоим окнам сообщение WM_ACTIVATE.

Дополнительные материалы на сайте:


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Владимир Соковиков - 03.12.2001