网站建设方案书内容管理制度,wordpress 数学主题,廊坊seo排名外包,公司做网站百度可以搜到吗CPen类
CPen画笔是一种用来画线及绘制有形边框的工具#xff0c;用户可以指定它的颜色及厚度#xff0c;并且可以指定它画实线、点线或虚线。
CPen类#xff0c;该类封装了Windows图形设备接口#xff08;GDI#xff09;画笔#xff0c;主要通过构造函数来创建绘图对象… CPen类
CPen画笔是一种用来画线及绘制有形边框的工具用户可以指定它的颜色及厚度并且可以指定它画实线、点线或虚线。
CPen类该类封装了Windows图形设备接口GDI画笔主要通过构造函数来创建绘图对象。
函数说明
CPen类的构造函数有3个分别如下
// Create methods
HPEN CreatePen(int nPenStyle, int nWidth, COLORREF crColor)
HPEN CreatePen(int nPenStyle, int nWidth, const LOGBRUSH* pLogBrush, int nStyleCount 0, const DWORD* lpStyle NULL)
HPEN CreatePenIndirect(LPLOGPEN lpLogPen)
HPEN CreatePen(int nPenStyle, int nWidth, COLORREF crColor)
创建画笔函数带有3个参数nPenStyle设置线形nWidth设置线宽crColor设置线的颜色
画笔线型参数说明 参数注释PS_SOLID实线画笔PS_DASH虚线画笔只有当画笔宽度小于等于1个设备单位时才有效PS_DOT点画笔只有当画笔宽度小于等于1个设备单位时才有效PS_DASHDOT虚线点画笔只有当画笔宽度小于等于1个设备单位时才有效PS_DASHDOTDOT创建一个双点线画笔只有当画笔宽度小于等于1个设备单位时才有效PS_NULL空线画笔PS_INSIDEFRAME创建一个内框线画笔该画笔可以在Windows GDI输出函数定义的矩形边界所生成的封闭状的边框内绘制直线
// 创建实线画笔
CPen solidPen;
solidPen.CreatePen(PS_SOLID, 1, RGB(0x99, 0x99, 0x99));
// 绘制一条直线
HGDIOBJ hOld ::SelectObject(hDC, (HGDIOBJ)solidPen);
::MoveToEx(hDC, 0, 0, nullptr);
::LineTo(hDC, 100, 100);
::SelectObject(hDC, hOld);// 创建虚线画笔CPen dotPen;dotPen.CreatePen(PS_DOT, 1, RGB(0xCC, 0xCC, 0xCC));dc.SelectPen(dotPen);
// ToDo: 绘制形状
HPEN CreatePen(int nPenStyle, int nWidth, const LOGBRUSH* pLogBrush, int nStyleCount 0, const DWORD* lpStyle NULL)
创建画笔函数带有5个参数nPenStyle设置线形nWidth设置线宽pLogBrush设置画刷nStyleCount指定lpStyle矩阵的长度如果参数nPenStyle的值不是PS_USRSTYLE则该参数值必须是0lpStyle设置自定义风格直线段的长度
// 设置一个宽度为2实线和白线分别是32和8的虚线矩形画刷
LOGBRUSH logBrush;
logBrush.lbStyle BS_SOLID; // 线的类型
logBrush.lbColor RGB(0xCC, 0xCC, 0xCC); // 线的颜色
DWORD lpStyle[] { 32, 8, 0}; // 虚线和白线比例也可以多设置几个
CPen pen;
pen.CreatePen(PS_USERSTYLE | PS_GEOMETRIC | PS_ENDCAP_SQUARE, 2, logBrush, 2, lpStyle);// 绘制一条宽度为2的虚线
HGDIOBJ hOld ::SelectObject(hDC, (HGDIOBJ)pen);
::MoveToEx(hDC, 0, 0, nullptr);
::LineTo(hDC, 100, 100);
::SelectObject(hDC, hOld);