GetObjectA 関数 (wingdi.h)

GetObject 関数は、指定したグラフィックス オブジェクトの情報を取得します。

構文

int GetObjectA(
        HANDLE h,
        int    c,
        LPVOID pv
);

パラメーター

h

c

pv

戻り値

関数が成功し、lpvObject が有効なポインターである場合、戻り値はバッファーに格納されたバイト数です。

関数が成功し、lpvObject が NULL場合、戻り値は、関数がバッファーに格納する情報を保持するために必要なバイト数です。

関数が失敗した場合、戻り値は 0 です。

備考

lpvObject パラメーターが指すバッファーは、グラフィックス オブジェクトに関する情報を受け取るために十分な大きさである必要があります。 この関数は、グラフィックス オブジェクトに応じて、BITMAP、DIBSECTION、EXTLOGPEN、LOGBRUSH、LOGFONT、または LOGPEN 構造体の 、またはテーブル エントリの数 (論理パレットの場合) を使用します。

hgdiobj CreateDIBSection呼び出すことによって作成されたビットマップへのハンドルであり、指定されたバッファーが十分な大きさである場合、GetObject 関数は DIBSECTION 構造体を返します。 さらに、DIBSECTION に含まれる BITMAP 構造体の bmBits メンバーには、ビットマップのビット値へのポインターが含まれます。

hgdiobj 、他の方法で作成されたビットマップへのハンドルである場合、getObject はビットマップの幅、高さ、および色の書式情報のみを返します。 GetDIBits を呼び出すか、GetBitmapBits 関数を することで、ビットマップのビット値を取得できます。

hgdiobj が論理パレットのハンドルである場合、getObject は、パレット内のエントリ数を指定する 2 バイト整数を取得します。 この関数は、パレットを定義する LOGPALETTE 構造体を取得しません。 アプリケーションは、パレット エントリに関する情報を取得するために、GetPaletteEntries 関数を呼び出すことができます。

hgdiobj がフォントのハンドルである場合、返される LOGFONT は、フォントの作成に使用される LOGFONT です。 正確な LOGFONT を表すことができなかったため、Windows でフォントの補間を行う必要がある場合、補間は LOGFONTに反映されません。 たとえば、垂直方向の描画をサポートしていないフォントの垂直バージョンを要求した場合、LOGFONT はフォントが垂直方向であることを示しますが、Windows では水平方向に描画されます。

例

例については、「イメージの格納 」を参照してください。

手記

wingdi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして GetObject を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー wingdi.h (Windows.h を含む)
ライブラリ Gdi32.lib
DLL Gdi32.dll

関連項目

BITMAP

CreateDIBSection の

DIBSECTION

デバイス コンテキスト関数の

デバイス コンテキストの概要

EXTLOGPEN を する

GetBitmapBits の

GetDIBits の

GetPaletteEntries を する

GetRegionData を する

LOGBRUSH を する

LOGFONT の

LOGPALETTE の

LOGPEN の