勇芳软件工作室.汉化:  Pens > Pen Functions >

CreatePen

Previous pageReturn to chapter overviewNext page

描述

 

CreatePen函数创建一个具有指定样式,宽度和颜色的逻辑笔。笔可以随后被选择到设备上下文中,并用于绘制线条和曲线。

 

C++ 语法

 

HPEN CreatePen(

__in int fnPenStyle,

__in int nWidth,

__in COLORREF crColor

);

 

PowerBASIC 语法

 

FUNCTION CreatePen ( _

BYVAL fnPenStyle AS LONG, _

BYVAL nWidth AS LONG, _

BYVAL crColor AS DWORD _

) AS DWORD

 

参数

 

fnPenStyle

 

[in]指定钢笔样式。它可以是以下值之一。

 

含义

PS_SOLID

笔是坚实的

PS_DASH

笔被打破了。仅当设备单位的笔宽为1或更小时,此样式才有效。

PS_DOT

笔是点缀的。仅当设备单位的笔宽为1或更小时,此样式才有效。

PS_DASHDOT

笔具有交替的虚线和点。仅当设备单位的笔宽为1或更小时,此样式才有效。

PS_DASHDOTDOT

笔具有交替的虚线和双点。仅当设备单位的笔宽为1或更小时,此样式才有效。

PS_NULL

笔是看不见的。

PS_INSIDEFRAME

笔是坚实的当使用该笔在任何GDI绘图功能中使用一个边界矩形时,图形的尺寸将会缩小,从而使其完全符合边框矩形,同时考虑到笔的宽度。这仅适用于几何笔。

 

nWidth

 

[in]以逻辑单位指定笔的宽度。如果nWidth为零,则笔是单个像素宽,无论当前的变换如何。

 

如果为以下样式指定了大于1的宽度,则使用PS_SOLID样式CreatePen返回指定宽度位的笔:PS_DASH,PS_DOT,PS_DASHDOT,PS_DASHDOTDOT。

 

crColor

 

[in]指定笔颜色的颜色参考。要生成COLORREF结构,请使用RGB宏。

 

返回值

 

如果函数成功,则返回值是标识逻辑笔的句柄。

 

如果函数失败,返回值为NULL。

 

备注

 

应用程序创建逻辑笔后,可以通过调用SelectObject函数将该笔选择到设备上下文中。在将笔选择到设备上下文中之后,可以用于绘制线条和曲线。

 

如果nWidth参数指定的值为零,则使用创建的笔画线总是单个像素宽,而不管当前的变换。

 

如果nWidth指定的值大于1,则fnPenStyle参数必须为PS_NULL,PS_SOLID或PS_INSIDEFRAME。

 

如果nWidth指定的值大于1,并且fnPenStyle为PS_INSIDEFRAME,则与笔相关联的行将绘制在除多边形和折线之外的所有图元的框架内。

 

如果nWidth指定的值大于1,则fnPenStyle为PS_INSIDEFRAME,并且由crColor参数指定的颜色与逻辑调色板中的一个条目不匹配,系统将使用抖动颜色。固体笔不提供抖动颜色。

 

当您不再需要笔时,请调用DeleteObject功能将其删除。

 

ICM:创建时不进行颜色管理。然而,当笔被选择到启用ICM的设备上下文中时,执行颜色管理。

 

引用文件 #INCLUDE Once

 

WinGdi.inc(包括Windows.inc)