クラス構造体から指定の項目の32ビット値取得
Declare Function GetClassLong Lib "user32.dll" Alias "GetClassLongA" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long
Declare Function GetClassInteger Lib "user32.dll" Alias "GetClassIntegerA" _
(ByVal hWnd As Integer, ByVal nIndex As Integer) As Integer
DWORD GetClassLong(
HWND hWnd,
int nIndex
);
引数
hWnd
取得対象のウィンドウのハンドルnIndex
取得する項目を示す定数戻り値
正常終了のとき nIndexで指定した項目の32ビット値nIndexの定数
エラーのとき 0
サンプル
GCL_CBCLSEXtrA = (-20) エキストラクラスデータのバイト数
GCL_CBWNDEXtrA = (-18) エキストラウィンドウデータのバイト数
GCL_HBRBACKGROUND = (-10) クラスの背景ブラシのハンドル
GCL_HCURSOR = (-12) クラスカーソルのハンドル
GCL_HICON = (-14) クラスアイコンのハンドル
GCL_HICONSM = (-34) 小さなクラスアイコンのハンドル
GCL_HMODULE = (-16) モジュールのインスタンスハンドル
GCL_MENUNAME = (-8) クラスメニュー名へのポインタ
GCL_STYLE = (-26) ウィンドウクラススタイル
GCL_WNDPROC = (-24) ウィンドウ関数へのポインタ
GCL_ATOM = (-32) ウィンドウクラスを示す整数アトム
ダウンロード(GetClassLong.lzh 1.63KB)Private Sub Form_Load()
'Formのデータを取得する
With Me.List1
.AddItem Hex(GetClassLong(Me.hWnd, GCL_CBCLSEXTRA))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_CBWNDEXTRA))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_HBRBACKGROUND))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_HCURSOR))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_HICON))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_HICONSM))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_HMODULE))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_MENUNAME))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_STYLE))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_WNDPROC))
.AddItem Hex(GetClassLong(Me.hWnd, GCL_ATOM))
End With
End Sub