Активизация дочернего окна


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

Пользователь может активизировать неактивное дочернее окно, щелкнув по нему. Приложение MDI активизирует дочернее окно, отправляя сообщение WM_MDIACTIVATE рабочему окну MDI. Поскольку рабочее окно обрабатывает это сообщение, оно отправляет сообщение WM_MDIACTIVATE оконной процедуре дочернего окна, чтобы сделать его активным и оконной процедуре теряющего активность дочернего окна.

Чтобы воспрепятствовать дочернему окну активизироваться, обработайте сообщение WM_NCACTIVATE дочернему окну, возвращая значение ЛОЖЬ (FALSE).

Система следит за позицией каждого дочернего окна в стеке перекрывающихся окон. Эта раскладка известна как Z-последовательность. Пользователь может активизировать следующее дочернее окно в Z-последовательности, щелкнув по Next (Следующий) Системного меню окна в активном окне. Приложение активизирует следующее (или предыдущее) дочернее окно в Z-последовательности, отправляя сообщение WM_MDINEXT  рабочему окну.

Чтобы извлечь дескриптор активного дочернего окна, приложение MDI отправляет сообщение WM_MDIGETACTIVE рабочему окну.

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

Hosted by uCoz