Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function creates a logical pen that has the specified style, width, and color. The pen can subsequently be selected into a device context and used to draw lines and curves.

Syntax

HPEN CreatePen( 
  int 
fnPenStyle, 
  int 
nWidth, 
  COLORREF 
crColor
);

Parameters

fnPenStyle

[in] Specifies the pen style. It can be any one of the following values.

Value Description

PS_SOLID

Pen is solid.

PS_DASH

Pen is dashed.

This style is valid only when the pen width is one or less in device units.

PS_NULL

Pen is invisible.

nWidth

[in] Specifies the width of the pen, in logical units.

If nWidthis zero, the pen is a single pixel wide, regardless of the current transformation.

CreatePenreturns a pen with the specified width bit with the PS_SOLID style if you specify a width greater than one for the PS_DASH style.

crColor

[in] Specifies a color reference for the pen color.

Return Value

Handle to a logical pen indicates success. NULL indicates failure. To get extended error information, call GetLastError.

Remarks

After an application creates a logical pen, it can select that pen into a device context by calling the SelectObjectfunction. After a pen is selected into a device context, it can be used to draw lines and curves.

If the value specified by the nWidthparameter is zero, a line drawn with the created pen will always be a single pixel wide regardless of the current transformation.

If the value specified by nWidthis greater than 1, the fnPenStyleparameter must be PS_NULL or PS_SOLID.

User-specified endcap styles, such as PS_ENDCAP_ROUND, are not supported.

When you no longer need the pen, call the DeleteObjectfunction to delete it.

Requirements

Header windows.h
Library coredll.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also