GetStockObject

ストックオブジェクト(システムで定義されているのペン、ブラシ、フォント、パレット)のハンドルを取得します。

HGDIOBJ GetStockObject(
    int fnObject   // ストックオブジェクトの型
);

GDI32.DLL

引数

fnObject

取得するストックオブジェクトの型を指定します。以下の値のいずれかを指定します。

意味
0 (WHITE_BRUSH) 白のブラシ
1 (LTGRAY_BRUSH) 明るい灰色のブラシ
2 (GRAY_BRUSH) 灰色のブラシ
3 (DKGRAY_BRUSH) 暗い灰色のブラシ
4 (BLACK_BRUSH) 黒のブラシ
5 (NULL_BRUSH, HOLLOW_BRUSH) 空のブラシ
6 (WHITE_PEN) 白のペン
7 (BLACK_PEN) 黒のペン
8 (NULL_PEN) 空のペン
10 (OEM_FIXED_FONT) OEM 文字セットの固定幅フォント
11 (ANSI_FIXED_FONT) Windows 文字セットの固定幅システムフォント
12 (ANSI_VAR_FONT) Windows 文字セットの可変幅システムフォント
13 (SYSTEM_FONT) システムフォント。デフォルトでメニューやダイアログボックスなどで使われる可変幅フォント。

Windows 95/98/NT: システムフォントは「MS Sans Selif」

Windows 2000/XP: システムフォントは「Tahoma」

14 (DEVICE_DEFAULT_FONT) Windows NT/2000/XP: デバイス依存のフォント
15 (DEFAULT_PALETTE) デフォルトのカラーパレット

システムパレット内のスタティックカラーで構成されます。

16 (SYSTEM_FIXED_FONT) システムフォント

古いバージョンの Windows との互換性のために残されています。現在は使わないでください。

17 (DEFAULT_GUI_FONT) ユーザーインターフェイス用のデフォルトフォント

メニューやダイアログボックスなどで使われます。

18 (DC_BRUSH) Windows 2000/XP: 一様な色のブラシ。

デフォルトの色は白です。この色は、 SetDCPenColor 関数を使って変更することができます。

19 (DC_PEN) Windows 2000/XP: 一様な色のペン。

デフォルトの色は白です。この色は、 SetDCPenColor 関数を使って変更することができます。

戻り値

成功すると要求した論理オブジェクトのハンドルが返ります。

失敗すると 0 (NULL) が返ります。

Windows NT/2000/XP: 拡張エラー情報を取得するには、 GetLastError 関数を使います。

解説

DKGRAY_BRUSH, GRAY_BRUSH, LTGRAY_BRUSH ストックオブジェクトは、ウィンドウクラスクラススタイルに CS_HREDRAW, CS_VREDRAW スタイルを持つウィンドウにのみ使用できます。それ以外のウィンドウでこれらのブラシを使用すると、ウィンドウの移動やサイズ変更を行なった後にブラシパターンのミスアライメントを引き起こす可能性があります。

使用済みのストックオブジェクトを DeleteObject 関数を使って解放する必要はありません。(解放しても問題はありません。)

対応情報

Windows 95 以降 / Windows NT 3.1 以降