Поделиться через


Классы окон (Windows и сообщения)

В этом разделе описываются типы классов окон, их поиск и элементы, определяющие поведение окон по умолчанию, принадлежащих к ним.

Класс окна — это набор атрибутов, которые система использует в качестве шаблона для создания окна. Каждое окно является членом класса окна. Все классы окон являются конкретными процессами.

В этом разделе

Имя Описание
о классах окон Обсуждает классы окон. Каждый класс окна имеет связанную процедуру окна, доступную всем окнам одного класса. Процедура окна обрабатывает сообщения для всех окон этого класса, поэтому управляет их поведением и внешним видом.
использование классов окон Демонстрирует, как зарегистрировать локальное окно и использовать его для создания главного окна.
Справочник по классу окна Содержит ссылку на API.

 

Функции класса Window

Имя Описание
GetClassInfoEx Извлекает сведения о классе окна, включая дескриптор небольшого значка, связанного с классом окна. Функция GetClassInfo не извлекает дескриптор на маленький значок.
GetClassLong Извлекает указанное 32-разрядное (длинное) значение из структуры WNDCLASSEX, связанной с указанным окном.
GetClassLongPtr Извлекает указанное значение из структуры WNDCLASSEX, связанной с указанным окном.
GetClassName Извлекает имя класса, к которому принадлежит указанное окно.
GetWindowLong Извлекает сведения об указанном окне. Функция также получает 32-разрядное (длинное) значение по указанному смещением в дополнительную память окна.
GetWindowLongPtr Извлекает сведения об указанном окне. Функция также извлекает значение с указанным смещением в дополнительную память окна.
RegisterClass Регистрирует класс окна для последующего использования в вызовах функции CreateWindow или CreateWindowEx.
RegisterClassEx Регистрирует класс окна для последующего использования в вызовах функции CreateWindow или CreateWindowEx.
SetClassLongPtr Заменяет указанное значение по указанному смещением в памяти дополнительного класса или структуру WNDCLASSEX для класса, к которому принадлежит указанное окно.
SetClassWord Заменяет 16-разрядное значение (WORD) на указанное смещение в дополнительную память класса для класса окна, к которому принадлежит указанное окно.
SetWindowLong Изменяет атрибут указанного окна. Функция также задает 32-разрядное (длинное) значение по указанному смещение в дополнительном окне памяти.
SetWindowLongPtr Изменяет атрибут указанного окна. Функция также задает значение по указанному смещением в дополнительном окне памяти.
UnregisterClass Отменяет регистрацию класса окна, освобождая память, необходимую для класса.

 

Следующие функции устарели.

Имя Описание
GetClassInfo Извлекает сведения о классе окна.
Примечание.функция GetClassInfo заменена функцией getClassInfo GetClassInfoEx. Вы по-прежнему можете использовать GetClassInfo, однако если вам не нужна информация о маленьком значке класса.
GetClassWord Извлекает 16-разрядное значение (WORD) по указанному смещением в дополнительную память класса для класса окна, к которому принадлежит указанное окно. Примечание. эта функция не рекомендуется использовать для любого использования, отличного от nIndex GCW_ATOM. Эта функция предоставляется только для совместимости с 16-разрядными версиями Windows. Приложения должны использовать функцию GetClassLong.
SetClassLong Заменяет указанное 32-разрядное значение (длинное) на указанное смещение в память дополнительного класса или структуру WNDCLASSEX для класса, к которому принадлежит указанное окно. Примечание. эта функция заменена функцией SetClassLongPtr. Чтобы написать код, совместимый с 32-разрядными и 64-разрядными версиями Windows, используйте SetClassLongPtr.

 

Структуры классов Окон

Имя Описание
WNDCLASS Содержит атрибуты класса окна, зарегистрированные функциейRegisterClass.
Эта структура заменена структурой WNDCLASSEX, используемой с функцией RegisterClassEx. Вы по-прежнему можете использовать WNDCLASS и RegisterClass, если не нужно задавать небольшой значок, связанный с классом окна.
WNDCLASSEX Содержит сведения о классе окна. Он используется с функциямиRegisterClassExи GetClassInfoEx.
Структура WNDCLASSEXаналогична структуре WNDCLASS. Существует два различия. WNDCLASSEX включает элемент cbSize, указывающий размер структуры и элемент hIconSm, содержащий дескриптор, связанный с классом окна.