GetObject

機能
オブジェクトを定義する構造体の情報を取得する
Declare Function GetObject Lib "gdi32.dll" Alias "GetObjectA" _
(ByVal hgdiobj As Long, ByVal cbBuffer As Long, lpvObject As Any) As Long
Declare Function GetObject Lib "gdi32.dll" Alias "GetObjectA" _
(ByVal hgdiobj As Integer, ByVal cbBuffer As Integer, lpvObject As Integer) As Integer

int GetObject(
HGDIOBJ hgdiobj,
int cbBuffer,
LPVOID lpvObject
);
引数
hgdiobj

オブジェクトのハンドル
cbBuffer
取得する情報のバイト数
lpvObject
(戻り値)データを取得する構造体
(オブジェクトの種類に応じて設定する構造体は異なる)
ByVal lpvObject As Longと宣言して、0を設定すると、バッファに必要なバイト数が戻る。
Visual Basicの場合は直接、構造体を指定するのであまり関係ない。
オブジェクトの種類構造体
ビットマップBITMAP
DIBDIBSECTION
拡張ペンEXTLOGPEN
ペンLOGPEN
ブラシLOGBRUSH
フォントLOGFONT
パレット
構造体ではなく、カラーパレットのエントリ数を
受け取る整数変数を設定する
戻り値
正常終了したとき                       読み込んだバイト数
エラーのとき                           0