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

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

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

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

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

Hosted by uCoz