Функция GetClassLongA (winuser.h)

Извлекает указанное 32-разрядное значение (DWORD) из структуры WNDCLASSEX, связанной с указанным окном.

Примечание При получении указателя или дескриптора эта функция была заменена функцией GetClassLongPtr . (Указатели и дескрипторы представляют собой 32 бита в 32-разрядной версии Windows и 64-разрядную версию в 64-разрядной версии Windows.)
 

Синтаксис

DWORD GetClassLongA(
  [in] HWND hWnd,
  [in] int  nIndex
);

Параметры

[in] hWnd

Тип: HWND

Дескриптор окна и, косвенно, класса, которому принадлежит окно.

[in] nIndex

Тип: int

Получаемое значение. Чтобы получить значение из дополнительной памяти класса, укажите положительное отсчитываемое от нуля байтовое смещение извлекаемого значения. Допустимые значения находятся в диапазоне от нуля до количества байтов дополнительной памяти класса минус четыре; Например, если вы указали 12 или более байтов дополнительной памяти класса, значение 8 будет индексом третьего целого числа. Чтобы получить любое другое значение из структуры WNDCLASSEX , укажите одно из следующих значений.

Значение Значение
GCW_ATOM
-32
Извлекает значение ATOM , однозначно определяющее класс окна. Это тот же атом, который возвращает функция RegisterClassEx .
GCL_CBCLSEXTRA
–20
Извлекает размер (в байтах) дополнительной памяти, связанной с классом .
GCL_CBWNDEXTRA
–18
Извлекает размер (в байтах) дополнительной памяти окна, связанной с каждым окном в классе . Сведения о том, как получить доступ к этой памяти, см. в разделе GetWindowLong.
GCL_HBRBACKGROUND
–10
Извлекает дескриптор фоновой кисти, связанной с классом .
GCL_HCURSOR
-12
Извлекает дескриптор курсора, связанного с классом .
GCL_HICON
-14
Извлекает дескриптор значка, связанного с классом .
GCL_HICONSM
-34
Извлекает дескриптор небольшого значка, связанного с классом .
GCL_HMODULE
-16
Извлекает дескриптор модуля, который зарегистрировал класс .
GCL_MENUNAME
–8
Извлекает адрес строки имени меню. Строка определяет ресурс меню, связанный с классом .
GCL_STYLE
-26
Извлекает биты стиля класса окна.
GCL_WNDPROC
-24
Извлекает адрес процедуры окна или дескриптор, представляющий адрес процедуры окна. Для вызова процедуры окна необходимо использовать функцию CallWindowProc .

Возвращаемое значение

Тип: DWORD

Если функция выполняется успешно, возвращается запрошенное значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Зарезервируйте дополнительную память класса, указав ненулевое значение в элементе cbClsExtra структуры WNDCLASSEX, используемой с функцией RegisterClassEx .

Примечание

Заголовок winuser.h определяет GetClassLong как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll
Набор API ext-ms-win-ntuser-windowclass-l1-1-1 (появилось в Windows 8.1)

См. также раздел

Основные понятия

GetClassLongPtr

GetWindowLong

Справочные материалы

RegisterClassEx

SetClassLong

WNDCLASSEX

Классы окон