WindowsGDI

windows GDI:

在不处理WM_PAINT消息时,用GetDc和ReleaseDc来获取设备描述句柄,在处理的时侯,用BeginPaint与EndPaint来获取

hdc=BeginPaint(hwnd,&ps);

EndPaint(hwnd,&ps);

变量ps是类型为PAINTSTRUCT的结构体,该结构的hdc字段是 BeginPaint返回的设备描述句柄,PAINTSTRUCT结构又包含一个名为rcPaint的RECT结构体,rcPaint定义了一个包围窗口 客户区无效范围的矩形。使用从BeginPaint获得的设备描述句柄,只能在这个区域内绘图。BeginPaint调用使该区域有效。

windows在处理非WM_PAINT消息时获取设备描述句柄:

hdc=GetDc(hwnd);

Release(hwnd,hdc);

这个设备描述表适用于窗口句柄为hwnd的客户区,这些调用与BeginPaint和EndPaint的组合之间的基本区别是,利用从GetDC返回的句柄可以在整个客户区上绘图,当然,GetDC和ReleaseDC不使客户区中任何可能的无效区域变为有效。

Windows程序还可以获取适用于整个窗口的设备描述表句柄:

hdc=GetWindowDC(hwnd);

ReleaseDC(hwnd,hdc);

获取设备描述表句柄的另一个更通用的函数是CreateDC:

hdc=CreateDC(pszDriver,pszDevice,pszOutput,pData);

Delete(hdc);

 

 

 

 

 

转载于:https://my.oschina.net/annieduoduo/blog/71423

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值