CPen类

博客转移:http://vivianke.blog.163.com/blog/static/29715271200741611717156/

 

CPen类
  
  1.CPen类构造函数该类共重载了3个构造函数:
  CPen( );
  CPen(int nPenStyle,int nWidth,COLORREF crColor);
  throw(CResourceException);
  CPen(int nPenStyle,int mWidth,const LOGVRUSH* pLogBrush,int nStyleCount=0,const DWORD* lpStyle=NULL);
throw(CResourceException);
  
参数nPenStyle的值

参数值 注释
PS_SOLID 创建一个实线画笔
PS_DASH 创建一个虚线画笔,该值只有当画笔宽度等于1个设备单位或更小时才有效
PS_DOT 创建一个点线画笔,该值只有当画笔宽度等于1个设备单位或更小时才有效
PS_DASHDOT 创建一个点和虚线交替画笔,该值只有当画笔宽度等于1个设备单位或更小时才有效
PS_DASHDOTDOT 创建一个双点线画笔,该值只有当画笔宽度等于1个设备单位或更小时才有效
PS_NULL     创建一个空线画笔
PS_INSIDEFRAME 创建一个内框线画笔,该画笔可以在WindowsGDI输出函数定义的矩形边界所生成的封闭形状的边框内绘制直线
PS_GEOMETRIC 创建一个几何画笔
PS_COSMETIC 创建一个装饰画笔
PS_ALTERNATE 创建一个设置其他像素的画笔
PS_USERSTYLE 创建一个使用由用户提供的风格矩阵的画笔
PS_ENDCAP_ROUND 尾帽为圆形的
PS_ENDCAP_SQUARE 尾帽为方形的
PS_ENDCAP—FLAT 尾帽为平坦的
PS_JOIN_BEVEL 成尖角连接
PS_JOIN_MITET 通过setMiterLimit函数设置的当前极限值范围内斜接;否则,成尖角连接
PS_JOIN_ROUND 成圆角连接

参数pLogBrush指向一个LOGBRUSH结构。该结构原型声明如下:
    typedef struct tag  LOGBRUSH{               /*lb*/
    UINT    lbStyle;
    COLORREF  lbColor;
    LONG    lbHatch;
    }LOGBRUSH;
该结构定义了一个画刷的风格、颜色和阴影线种类。
   
 画刷的风格值
参数值          说明
BS_DIBPATTERN 由设备无关的位图定义的图形画刷。如果该参数值为该值,则成员lbHatch包含了一个被压缩的DIB句柄
BS_DIBPATTERNPT 由设备无关的位图定义的图形画刷。如果该参数值为该值,则成员lbHatch包含了一个被压缩的DIB指针
BS_HATCHED 阴影线画刷
BS_HOLLOW 中空画刷
BS_NULL 与参数值为BS_HOLLOW定义相同的画刷
BS_PATTERN 由内存位图定义的图形画刷
BS_SOLID 实画刷
BS_NULL 与参数值为BS_HOLLOW定义相同的画刷
BS_PATTERN 由内存位图定义的图形画刷
BS_SOLID 实画刷

2、CPen类初始化成员函数
    (1)CreatePen( )成员函数其原型声明如下:
  BOOL CreatePen(int nPenStyle,int nWidth,const LOGBRUSH* pLogBrush,int nStyleCount=0,const DWORD*lpStyle=NULL);
    (2)CreatePenIndirect( )成员函数的原型声明如下:
    BOOL CreatePenIndirect(LPLOGPEN lpLogPen);
   LOGPEN结构的具体定义如下:
  typedef struct tagLOGPEN{          //  lgpn
UNIT lopnStyle;
POINT lopnWidth;
COLORREF lopnColor;
}LOGPEN;

可以使用RGB宏来完成颜色设定:
COLORREF  RGB(cRed,cGreen,cBlue);
也可以使用COLORREF,其结构为0x00bbggrr。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值