函数功能:
CreatePen 函数用指定的样式、宽度和颜色创建一个逻辑画笔。
创建的画笔随后可以被选择到设备环境中,并用于绘制直线和曲线。
API 函数原型:
注释:_In_ 说明该参数是输入的。
HPEN CreatePen( _In_ int fnPenStyle, _In_ int nWidth, _In_ COLORREF crColor );
参数解析:
|
参数 |
含义 |
|
fnPenStyle |
指定画笔样式,详细内容请看下边 |
|
nWidth |
1. 指定画笔的宽度 |
|
crColor |
1. 指定画笔的 RGB 颜色 |
fnPenStyle 参数指定画笔样式为如下值之一:
|
值 |
含义 |
|
PS_SOLID |
实线 |
|
PS_DASH |
虚线(nWidth 参数的值必须 <= 1) |
|
PS_DOT |
点线(nWidth 参数的值必须 <= 1) |
|
PS_DASHDOT |
点划线(nWidth 参数的值必须 <= 1) |
|
PS_DASHDOTDOT |
点点划线(nWidth 参数的值必须 <= 1) |
|
PS_NULL |
该画笔看不见 |
|
PS_INSIDEFRAME |
该画笔用于在 GDI 函数绘图中实现,绘制椭圆、矩形、圆角矩形、饼图以及弦等生成的封闭对象框时,画笔宽度向内扩展。 |
返回值:
1. 如果函数调用成功,返回值是新画笔的句柄;
2. 如果函数调用失败,返回值是 NULL。
备注:
1. 调用该函数创建新画笔之后,可以使用 SelectObject 函数将新画笔选入设备环境中。只有当画笔被选入设备环境,才能使用该画笔绘制线段或曲线。
2. 如果 nWidth 参数的值是 0,则画笔为一个像素宽度,不管当前的映射模式。
3. 如果 nWidth 参数的值大于 1,则 fnPenStyle 参数的值必须为 PS_NULL, PS_SOLID 或 PS_INSIDEFRAME 的其中一个。
4. 如果 nWidth 参数的值大于 1,且 fnPenStyle 参数的值为 PS_INSIDEFRAME,所有与该画笔相关联(除了折线和多边形)的封闭图形绘制,画笔宽度向内扩展。
5. 如果 nWidth 参数的值大于 1,且 fnPenStyle 参数的值为 PS_INSIDEFRAME,如果指定的 RGB 颜色不存在,就进行抖动处理。
6. 如果你再也不需要该画笔,可以使用 DeleteObject 函数将其删除。




