GetStockObject function (wingdi.h)
The GetStockObject function retrieves a handle to one of the stock pens, brushes, fonts, or palettes.
Syntax
HGDIOBJ GetStockObject(
[in] int i
);
Parameters
[in] i
The type of stock object. This parameter can be one of the following values.
Value | Meaning |
---|---|
|
Black brush. |
|
Dark gray brush. |
|
Solid color brush. The default color is white. The color can be changed by using the SetDCBrushColor function. For more information, see the Remarks section. |
|
Gray brush. |
|
Hollow brush (equivalent to NULL_BRUSH). |
|
Light gray brush. |
|
Null brush (equivalent to HOLLOW_BRUSH). |
|
White brush. |
|
Black pen. |
|
Solid pen color. The default color is black. The color can be changed by using the SetDCPenColor function. For more information, see the Remarks section. |
|
Null pen. The null pen draws nothing. |
|
White pen. |
|
Windows fixed-pitch (monospace) system font. |
|
Windows variable-pitch (proportional space) system font. |
|
Device-dependent font. |
|
Default font for user interface objects such as menus and dialog boxes. It is not recommended that you use DEFAULT_GUI_FONT or SYSTEM_FONT to obtain the font used by dialogs and windows; for more information, see the remarks section.
The default font is Tahoma. |
|
Original equipment manufacturer (OEM) dependent fixed-pitch (monospace) font. |
|
System font. By default, the system uses the system font to draw menus, dialog box controls, and text. It is not recommended that you use DEFAULT_GUI_FONT or SYSTEM_FONT to obtain the font used by dialogs and windows; for more information, see the remarks section.
The default system font is Tahoma. |
|
Fixed-pitch (monospace) system font. This stock object is provided only for compatibility with 16-bit Windows versions earlier than 3.0. |
|
Default palette. This palette consists of the static colors in the system palette. |
Return value
If the function succeeds, the return value is a handle to the requested logical object.
If the function fails, the return value is NULL.
Remarks
It is not recommended that you employ this method to obtain the current font used by dialogs and windows. Instead, use the SystemParametersInfo function with the SPI_GETNONCLIENTMETRICS parameter to retrieve the current font. SystemParametersInfo will take into account the current theme and provides font information for captions, menus, and message dialogs.
Use the DKGRAY_BRUSH, GRAY_BRUSH, and LTGRAY_BRUSH stock objects only in windows with the CS_HREDRAW and CS_VREDRAW styles. Using a gray stock brush in any other style of window can lead to misalignment of brush patterns after a window is moved or sized. The origins of stock brushes cannot be adjusted.
The HOLLOW_BRUSH and NULL_BRUSH stock objects are equivalent.
It is not necessary (but it is not harmful) to delete stock objects by calling DeleteObject.
Both DC_BRUSH and DC_PEN can be used interchangeably with other stock objects like BLACK_BRUSH and BLACK_PEN. For information on retrieving the current pen or brush color, see GetDCBrushColor and GetDCPenColor. See Setting the Pen or Brush Color for an example of setting colors. The GetStockObject function with an argument of DC_BRUSH or DC_PEN can be used interchangeably with the SetDCPenColor and SetDCBrushColor functions.
Examples
For an example, see Setting the Pen or Brush Color.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | wingdi.h (include Windows.h) |
Library | Gdi32.lib |
DLL | Gdi32.dll |