-
GetWindowLong
鎖定
GetWindowLong是一個Windows API。該函數可獲取指定窗口的有關信息,也可用於獲取窗口內存中指定偏移的32位度整型值。
- 中文名
- 獲取窗口參數
- 外文名
- GetWindowLong
- 64位版本
- GetWindowLongPtr
- 相關函數
- SetWindowLong
GetWindowLong原型
Long GetWindowLong(HWND hWnd,int nlndex);
64位版本參見GetWindowLongPtr。
[1]
GetWindowLong參數
GetWindowLonghWnd
目標窗口句柄,間接指向其窗口類。
GetWindowLongnlndex
若指定值大於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 | 0 | 獲取在對話框過程中某消息的返回值。 |
DWL_USER | 8 |
GetWindowLong返回值
如果函數成功,返回值是所需的32位整型值;
如果函數失敗,返回值是0。獲得更多錯誤信息請調用 GetLastError。
GetWindowLong其他信息
通過在使用RegisterClassEx函數前將WNDCLASSEX結構中的cbWndExtra成員指定一個非0值來分配窗口內存。
[2]
GetWindowLong要求
函數位置 | |
---|---|
頭文件 | 在Winuser.h中聲明,包含於Windows.h。 |
庫文件 | User32.lib |
操作系統最低版本 | Windows 2000 Professional |
ANSI/Unicode | GetWindowLongA/GetWindowLongW |
- 參考資料
-
- 1. GetWindowLongPtr function .MSDN[引用日期2018-04-15]
- 2. GetWindowLong function .MSDN[引用日期2018-04-15]