Функция 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 RegisterClassExSetParent, 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

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz