Функция GetWindowLongPtr
Функция GetWindowLongPtr извлекает информацию об определяемом окне. Функция также извлекает данные и о значение при заданном смещении в дополнительной памяти окна.
Если Вы возвращаете указатель или дескриптор, эта функция заменяется функцией GetWindowLong. (Указатели и дескрипторы - это 32 бита в 32-разрядном Microsoft ® Windows ® и 64 бита на 64-разрядном Windows.) Чтобы написать код, который является совместимым и с 32-разрядными и с 64-разрядными версиями Windows, используйте функцию GetWindowLongPtr.
Синтаксис
LONG_PTR GetWindowLongPtr( HWND hWnd, int nIndex ); |
Параметры
hWnd
[in] Дескриптор окна и, косвенно, класс которому окно принадлежит.Если Вы извлекаете указатель или дескриптор, эта функция заменяет функцию GetWindowLong. (Указатели и дескрипторы - 32 бита в 32-разрядном Windows и 64 бита в 64-разрядном Windows.), чтобы записать код, который является совместимым и с 32-разрядными и с 64-разрядными версиями Windows, используйте GetWindowLongPtr.
nIndex
[in] Устанавливает отсчитываемую от нуля величину извлекаемого смещения. Допустимые значения находятся в диапазоне от нуля до числа байтов дополнительной памяти окна, минус размер целого числа. Чтобы извлечь любое другое значение, установите одно из ниже перечисленных значений.Значение | Предназначение |
GWL_EXSTYLE | Извлекает данные о расширенном стиле окна. Дополнительную информацию, см. в описании функции CreateWindowEx. |
GWL_STYLE | Извлекает данные о стиле окна. |
GWLP_WNDPROC |
Извлекает указатель на оконную процедуру или дескриптор, обозначающий указатель на оконную процедуру. Вы должны использовать функцию CallWindowProc, чтобы вызвать оконную процедуру. |
GWLP_HINSTANCE | Извлекает дескриптор экземпляра приложения. |
GWLP_HWNDPARENT | Извлекает дескриптор родительского окна, если таковое существует. |
GWLP_ID | Извлекает идентификатор окна. |
GWLP_USERDATA | Извлекает пользовательские данные, связанные с окном. Эти данные предназначаются для использования приложением, которое создавало окно. Его значение первоначально является нулевым. |
Следующие значения также доступны, когда параметр hWnd идентифицирует диалоговое окно.
Значение | Предназначение |
DWLP_DLGPROC | Извлекает указатель на процедуру диалогового окна, или дескриптор, обозначающий указатель на процедуру диалогового окна. Вы должны использовать функцию CallWindowProc, чтобы вызвать процедуру диалогового окна. |
DWLP_MSGRESULT |
Извлекает величину возвращаемого значения сообщения, обработанного в процедуре диалогового окна. |
DWLP_USER | Извлекает дополнительную информацию о конкретной прикладной программе, типа дескрипторов или указателей. |
Возвращаемое значение
Если функция завершается успешно, возвращаемое значение - затребованная величина.
Если функция завершается ошибкой, возвращаемое значение равняется нулю. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.
Если перед этим функция SetWindowLong или SetWindowLongPtr не вызвалась, GetWindowLongPtr возвращает нуль для значений дополнительной памяти окна или класса.
Замечания
Резервируйте дополнительную память окна, определяя ненулевое значение в члене cbWndExtra структуры WNDCLASSEX, используемой с функцией RegisterClassEx.
Смотри также
Обзор Классы окна, Функции, используемые классами окна, CallWindowProc, RegisterClassEx, SetParent, SetWindowLongPtr, WNDCLASSEX
Размещение и совместимость GetWindowLongPtr |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 3.1 и выше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Используемая библиотека |
User32.lib |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |