パラメータ
hWnd
ウィンドウのハンドルを指定する。クラスも間接的に指定したことになる(指定したウィンドウの属するクラスが使われる)。
nIndex
ウィンドウクラスに関するデータのうち、どのデータ(32 ビット値)を取得するのかを指定する。
拡張クラスメモリからデータを取得するときは、0 から始まるオフセットをバイト単位で指定する。
有効な値は、0 から拡張クラスメモリのバイト数より 4 小さい値までである。
たとえば、12 バイト以上の拡張クラスメモリを持つクラスを指定した場合なら、8 を指定すると、3 番目の 32 ビット値が取得できる。
WNDCLASSEX 構造体から拡張クラスメモリ以外のデータを取得するときは、次の値のいずれかを指定する。
値
|
意味
|
GCW_ATOM |
ウィンドウクラスを一意的に識別するアトム値を取得する。 |
|
これは、RegisterClassEx 関数が返すアトムと同じである。 |
GCL_CBCLSEXTRA |
指定したクラスに関連付けられている拡張クラスメモリのサイズをバイト単位で取得する。 |
GCL_CBWNDEXTRA |
ウィンドウに関連付けられている拡張ウィンドウメモリのサイズをバイト単位で取得する。 |
|
このメモリへアクセスする方法については、GetWindowLong 関数の説明を参照すること。 |
GCL_HBRBACKGROUND |
クラスに関連付けられている背景ブラシのハンドルを取得する。 |
GCL_HCURSOR |
クラスに関連付けられているマウスカーソルのハンドルを取得する。 |
GCL_HICON |
クラスに関連付けられているアイコンのハンドルを取得する。 |
GCL_HICONSM |
クラスに関連付けられている小さいアイコンのハンドルを取得する。 |
GCL_HMODULE |
クラスを登録したモジュールのハンドルを取得する。 |
GCL_MENUNAME |
メニュー名が入った文字列へのポインタ(またはメニューの ID)を取得する。この文字列は、クラスに関連 |
|
付けられているメニューリソースを識別する。 |
GCL_STYLE |
ウィンドウクラスのスタイルビットを取得する。 |
GCL_WNDPROC |
ウィンドウプロシージャのアドレス、またはウィンドウプロシージャのアドレスを示すハンドルを取得する。 |
|
取得したウィンドウプロシージャを呼び出すには、CallWindowProc 関数を使わなければならない。 |
戻り値
関数が成功すると、要求したデータ(32 ビット値)が返る。
関数が失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。
解説
拡張クラスメモリを確保するには、RegisterClassEx 関数に渡す WNDCLASSEX 構造体の
cbClsExtra メンバに 0 以外の値を設定する。 |