Классы окон (Windows и сообщения)
В этом разделе описываются типы оконных классов, их расположение в системе и элементы, определяющие поведение окон по умолчанию, которые к ним относятся.
Класс окна — это набор атрибутов, которые система использует в качестве шаблона для создания окна. Каждое окно является членом класса окна. Все классы окон зависят от процесса.
В этом разделе
Имя | Описание |
---|---|
Сведения о классах окон | Описывает классы окон. Каждый класс окна имеет связанную процедуру окна, которая совместно используется всеми окнами одного класса. Процедура window обрабатывает сообщения для всех окон этого класса и, следовательно, управляет их поведением и внешним видом. |
Использование оконных классов | Демонстрирует, как зарегистрировать локальное окно и использовать его для создания окна main. |
Справочник по классу Window | Содержит ссылку на API. |
Функции класса Window
Имя | Описание |
---|---|
GetClassInfoEx | Извлекает сведения о классе окна, включая дескриптор небольшого значка, связанного с классом окна. Функция GetClassInfo не получает дескриптор небольшого значка. |
GetClassLong | Извлекает указанное 32-разрядное (длинное) значение из структуры WNDCLASSEX , связанной с указанным окном. |
GetClassLongPtr | Извлекает указанное значение из структуры WNDCLASSEX, связанной с указанным окном. |
GetClassName | Извлекает имя класса, которому принадлежит указанное окно. |
GetWindowLong | Извлекает сведения об указанном окне. Функция также извлекает 32-разрядное значение (long) с указанным смещением в дополнительную память окна. |
GetWindowLongPtr | Извлекает сведения об указанном окне. Функция также извлекает значение с указанным смещением в дополнительную память окна. |
RegisterClass | Регистрирует класс окна для последующего использования в вызовах функции CreateWindow или CreateWindowEx . |
RegisterClassEx | Регистрирует класс окна для последующего использования в вызовах функции CreateWindow или CreateWindowEx . |
SetClassLongPtr | Заменяет указанное значение с указанным смещением в дополнительной памяти класса или структуре WNDCLASSEX для класса, которому принадлежит указанное окно. |
SetClassWord | Заменяет 16-битовое значение (WORD) с указанным смещением в дополнительную память класса для класса окна, которому принадлежит указанное окно. |
SetWindowLong | Изменяет атрибут указанного окна. Функция также задает 32-разрядное значение (long) с указанным смещением в дополнительную память окна. |
SetWindowLongPtr | Изменяет атрибут указанного окна. Функция также задает значение с указанным смещением в дополнительной памяти окна. |
Отмена регистрацииClass | Отменяет регистрацию класса окна, освобождая память, необходимую для класса . |
Следующие функции устарели.
Имя | Описание |
---|---|
GetClassInfo | Извлекает сведения о классе окна. Примечание: Функция GetClassInfo была заменена функцией GetClassInfoEx . Вы по-прежнему можете использовать GetClassInfo, если вам не нужны сведения о маленьком значке класса. |
GetClassWord | Извлекает 16-битовое значение (WORD) с указанным смещением в дополнительную память класса для класса окна, которому принадлежит указанное окно.
Примечание: Эта функция является нерекомендуемой для любого использования, кроме nIndex , для GCW_ATOM. Функция предоставляется только для совместимости с 16-разрядными версиями Windows. Приложения должны использовать функцию GetClassLong . |
SetClassLong | Заменяет указанное 32-разрядное значение (long) с указанным смещением в дополнительную память класса или структуру WNDCLASSEX для класса, которому принадлежит указанное окно.
Примечание: Эта функция заменена функцией SetClassLongPtr . Чтобы написать код, совместимый с 32-разрядной и 64-разрядной версиями Windows, используйте SetClassLongPtr. |
Структуры оконных классов
Имя | Описание |
---|---|
WNDCLASS | Содержит атрибуты класса окна, зарегистрированные функцией RegisterClass . Эта структура была заменена структурой WNDCLASSEX , используемой с функцией RegisterClassEx . Вы по-прежнему можете использовать WNDCLASS и RegisterClass , если не нужно задавать маленький значок, связанный с классом окна. |
WNDCLASSEX | Содержит сведения о классе окна. Он используется с функциями RegisterClassEx и GetClassInfoEx . Структура WNDCLASSEX аналогична структуре WNDCLASS . Есть два отличия. WNDCLASSEX включает элемент cbSize , который указывает размер структуры, и элемент hIconSm , содержащий дескриптор небольшого значка, связанного с классом окна. |