Как система классифицирует класс окна


Система обслуживает список структур для каждого из трех типов класса окна. Когда приложение вызывает функцию CreateWindow или CreateWindowEx, чтобы создать окно с заданным классом, системой, чтобы определить класс, используется ниже описанная процедура.

  1. Ищется список локальных классов приложения для класса с указанным именем, дескриптор экземпляра которого соответствует дескриптору экземпляра модуля. (Несколько модулей могут использовать одно и то же имя для регистрации локальные классы в  том же самом процессе.)
  2. Если этого имени нет в списке локальных классов приложения, ищется список глобальных классов приложения.
  3. Если этого имени нет и в списке глобальных классов приложения, ищется список системных глобальных классов.

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

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

Hosted by uCoz