设为首页 加入收藏

TOP

图形基础(四十)
2010-12-30 21:10:52 来源: 作者: 【 】 浏览:40219
Tags:图形 基础
法形如:

其中,iPenStyle参数确定画笔是实线、点线还是虚线,该参数可以是WINGDI.H表头档案中定义的以下识别字,图5-14显示了每种画笔产生的画笔样式。


 

图5-14 七种画笔样式

对於PS_SOLID、PS_NULL和PS_INSIDEFRAME画笔样式,iWidth参数是画笔的宽度。iWidth值为0则意味著画笔宽度为一个图素。现有画笔是一个图素宽。如果指定的是点划线或者虚线式画笔样式,同时又指定一个大於1的实际宽度,那么Windows将使用实线画笔来代替。

CreatePen的crColor参数是一个COLORREF值,它指定画笔的颜色。对於除了PS_INSIDEFRAME之外的画笔样式,如果将画笔选入装置内容中,Windows会将颜色转换为设备所能表示的最相近的纯色。PS_INSIDEFRAME是唯一一种可以使用混色的画笔样式,并且只有在宽度大於1的情况下才如此。

在与定义一个填入区域的函式一起使用时,PS_INSIDEFRAME画笔样式还有另外一个奇特之处:对於除了PS_INSIDEFRAME以外的所有画笔样式来说,如果用来画边界框的画笔宽度大於1个图素,那么画笔将居中对齐在边界框线上,这样边界框线的一部分将位於边界框之外;而对於PS_INSIDEFRAME画笔样式来说,整条边界框线都画在边界框之内。

您也可以通过建立一个型态为LOGPEN(「逻辑画笔」)的结构,并呼叫CreatePenIndirect来建立画笔。如果您的程式使用许多能在原始码中初始化的画笔,那么使用这种方法将有效得多。

要使用CreatePenIndirect,首先定义一个LOGPEN型态的结构:

此结构有三个成员:lopnStyle(无正负号整数或UINT)是画笔样式,lopnWidth(POINT结构)是按逻辑单位度量的画笔宽度,lopnColor (COLORREF)是画笔颜色。Windows只使用lopnWidth结构的x值作为画笔宽度,而忽

首页 上一页 37 38 39 40 41 42 43 下一页 尾页 40/83/83
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇键盘 下一篇输出文字

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: