Windows API一日一练(32)CreatePen函数

本文介绍了如何使用CreatePen函数创建自定义画笔,包括设置画笔的颜色、宽度等属性,并通过示例代码展示了如何绘制一条特定颜色和宽度的直线。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

画画是讲究色彩与线条,不同的地方是采用不同的画笔。上面显示直线,都是采用设备缺省的画笔来画直线。现在就来介绍怎么样创建自己的画笔,比如设置画笔的颜色,画笔的大小。像Windows按钮显示为3D的形状,其实就是用两种颜色画笔分别画相应的线,就生成按钮。而创建画笔就需要使用到CreatePen函数。
函数CreatePen声明如下:
WINGDIAPI HPEN WINAPI CreatePen( __in int iStyle, __in int cWidth, __in COLORREF color);
iStyle是画笔的类型,比如是实线,还是虚线等等。
cWidth是线的宽度。
color是线的颜色。
调用这个函数的例子如下:
#001//
#002//界面显示输出.
#003//
#004//蔡军生 2007/09/10 QQ:9073204 深圳
#005//
#006void CCaiWinMsg::OnDraw(HDC hDC)
#007{
#008//移到指定位置.
#009POINT ptLeftTop;
#010ptLeftTop.x = 10;
#011ptLeftTop.y = 10;
#012MoveToEx(hDC,ptLeftTop.x,ptLeftTop.y,NULL);
#013
#014//修改直线的颜色,粗细.
#015HPEN hPen = CreatePen(PS_SOLID, 10, RGB(0, 255, 0));
#016
#017//设置当前设备的画笔.
#018HGDIOBJ hOldPen = SelectObject(hDC,hPen);
#019
#020//(10,10)(100,100)画一条直线.
#021ptLeftTop.x = 100;
#022ptLeftTop.y = 100;
#023LineTo(hDC,ptLeftTop.x,ptLeftTop.y);
#024
#025//恢复原来的画笔.
#026SelectObject(hDC,hOldPen);
#027
#028//删除创建的画笔.
#029DeleteObject(hPen);
#030
#031}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值