Структура WNDCLASSEXA (winuser.h)
Содержит сведения о классе окна. Он используется с функциями RegisterClassEx и GetClassInfoEx.
Структура WNDCLASSEX
Синтаксис
typedef struct tagWNDCLASSEXA {
UINT cbSize;
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCSTR lpszMenuName;
LPCSTR lpszClassName;
HICON hIconSm;
} WNDCLASSEXA, *PWNDCLASSEXA, *NPWNDCLASSEXA, *LPWNDCLASSEXA;
Члены
cbSize
Тип: UINT
Размер этой структуры в байтах. Установите для этого элемента значение sizeof(WNDCLASSEX)
. Перед вызовом функции GetClassInfo Ex необходимо задать этот член перед вызов
style
Тип: UINT
Стили классов. Этот элемент может быть любым сочетанием стилей классов .
lpfnWndProc
Тип: WNDPROC
Указатель на процедуру окна. Для вызова процедуры окна необходимо использовать функцию CallWindowProc. Дополнительные сведения см. в разделе WindowProc.
cbClsExtra
Тип: int
Количество дополнительных байтов, выделяемых после структуры класса окна. Система инициализирует байты до нуля.
cbWndExtra
Тип: int
Количество дополнительных байтов, выделяемых после экземпляра окна. Система инициализирует байты до нуля. Если приложение использует
hInstance
Тип: HINSTANCE
Дескриптор экземпляра, содержащего процедуру окна для класса.
hIcon
Тип: HICON
Дескриптор значка класса. Этот элемент должен быть дескриптором ресурса значка. Если этот элемент NULL, система предоставляет значок по умолчанию.
hCursor
Тип: HCURSOR
Дескриптор курсора класса. Этот элемент должен быть дескриптором ресурса курсора. Если этот элемент NULL, приложение должно явно задать фигуру курсора при каждом переходе мыши в окно приложения.
hbrBackground
Тип: HBRUSH
Дескриптор фоновой кисти класса. Этот элемент может быть дескриптором кисти, используемой для рисования фона, или это может быть значение цвета. Значение цвета должно быть одним из следующих стандартных системных цветов (значение 1 должно быть добавлено в выбранный цвет). Если задано значение цвета, необходимо преобразовать его в один из следующих типов HBRUSH:
- COLOR_ACTIVEBORDER
- COLOR_ACTIVECAPTION
- COLOR_APPWORKSPACE
- COLOR_BACKGROUND
- COLOR_BTNFACE
- COLOR_BTNSHADOW
- COLOR_BTNTEXT
- COLOR_CAPTIONTEXT
- COLOR_GRAYTEXT
- COLOR_HIGHLIGHT
- COLOR_HIGHLIGHTTEXT
- COLOR_INACTIVEBORDER
- COLOR_INACTIVECAPTION
- COLOR_MENU
- COLOR_MENUTEXT
- COLOR_SCROLLBAR
- COLOR_WINDOW
- COLOR_WINDOWFRAME
- COLOR_WINDOWTEXT
Если этот элемент null, приложение должно покрасить свой фон всякий раз, когда он запрашивается нарисовать в клиентской области. Чтобы определить, должен ли фон быть окрашен, приложение может обработать сообщение WM_ERASEBKGND или проверить элемент fErase член структуры PAINTSTRUCT, заполненной функцией BeginPaint.
lpszMenuName
Тип: LPCTSTR
Указатель на строку символов, завершающую значение NULL, указывающую имя ресурса меню класса, как имя отображается в файле ресурса. Если для идентификации меню используется целое число, используйте макрос MAKEINTRESOURCE. Если этот член NULL, окна, принадлежащие этому классу, не имеют меню по умолчанию.
lpszClassName
Тип: LPCTSTR
Указатель на строку, завершаемую значением NULL или атом. Если этот параметр является атомом, он должен быть атомом класса, созданным предыдущим вызовом функции RegisterClass или RegisterClassEx. Атом должен находиться в слове с низким порядком lpszClassName; Слово с высоким порядком должно быть равно нулю.
Если lpszClassName является строкой, он указывает имя класса окна. Имя класса может быть любым именем, зарегистрированным в RegisterClass или RegisterClassExили любым из предопределенных имен классов элементов управления.
Максимальная длина lpszClassName составляет 256. Если lpszClassName больше максимальной длины , функция RegisterClassEx завершится ошибкой.
hIconSm
Тип: HICON
Дескриптор небольшого значка, связанного с классом окна. Если этот элемент NULL, система выполняет поиск ресурса значка, указанного элементом hIcon, чтобы значок соответствующего размера использовался в качестве небольшого значка.
Замечания
Заметка
Заголовок winuser.h определяет WNDCLASSEX как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
заголовка | winuser.h (включая Windows.h) |
См. также
концептуальные
Справочник