GetWindowLong
GetWindowLong
GetWindowLong是一個Windows API。該函數可獲取指定窗口的有關信息,也可用於獲取窗口內存中指定偏移的32位度整型值。
64位版本參見GetWindowLongPtr。
目標窗口句柄,間接指向其窗口類。
若指定值大於0,返回窗口內存中指定偏移量的32位值。
也可指定以下值來獲得其它數據:
宏定義 | 常量 | 描述 |
GWL_EXSTYLE | -20 | 獲取擴展窗口樣式 |
GWL_HINSTANCE | -6 | 獲取應用實例句柄 |
GWL_HWNDPARENT | -8 | 獲取所有者窗口句柄 |
GWL_ID | -12 | 獲取窗口ID |
GWL_STYLE | -16 | 獲得窗口樣式 |
GWL_USERDATA | -21 | 獲取用戶設置的32位數據,其值默認為0 |
GWL_WNDPROC | -4 | 獲取窗口過程地址或句柄。必須使用CallWindowProc函數調用獲取的窗口過程。 |
hWnd參數為對話框句柄時,還可用下列值:
宏定義 | 常量 | 描述 |
DWL_DLGPROC | 4 | 獲取對話框過程地址或句柄。必須使用CallWindowProc函數來調用對話框過程。 |
DWL_MSGRESULT | 獲取在對話框過程中某消息的返回值。 | |
DWL_USER | 8 | 獲取應用程序專用的額外信息,例如一個句柄或指針。 |
如果函數成功,返回值是所需的32位整型值;
如果函數失敗,返回值是0。獲得更多錯誤信息請調用 GetLastError。
通過在使用RegisterClassEx函數前將WNDCLASSEX結構中的cbWndExtra成員指定一個非0值來分配窗口內存。
函數位置 | user32.dll |
頭文件 | 在Winuser.h中聲明,包含於Windows.h。 |
庫文件 | User32.lib |
操作系統最低版本 | Windows 2000 Professional |
ANSI/Unicode | GetWindowLongA/GetWindowLongW |