VC中GDI绘图技术基础知识:hdc设备环境句柄,坐标系

12 篇文章 0 订阅
1 篇文章 0 订阅

VC中GDI绘图技术:

》》通过HDC设备环境句柄绘图有三种方式:标准客户区绘图,临时客户区绘图,非客户区绘图

1-标准客户区绘图,是在WM_PAINT消息回调时执行,调用BeginPaint函数,EndPaint函数。

2-临时客户区绘图,是在任何消息回调时都可以执行,调用GetDc获取临时客户区句柄进行绘图,最后调用ReleaseDc释放。

3-非客户区绘图,是在WM_NCPAINT消息回调时执行,针对一些窗口标题和边框的绘制,是调用GetWindowDc获取句柄进行绘图,最后调用ReleaseDc释放。

》》HDC设备环境句柄和坐标系说明:

屏幕坐标系和客户区坐标系,GetWindowRect获取的是基于屏幕坐标系,原点在屏幕左上角,而GetClientRect获取的是客户区坐标系,原点在标题栏下的左上角。还有两个转换函数:ScreenToClient和ClientToScreen。

HDC hDc=GetDc(hwnd);//管理的是整个窗口的客户区,坐标系(0,0)是在客户区的左上角

HDC hDc=GetWindowDc(hwnd);//管理的是整个窗口包括非客户区,坐标系(0,0)是在整个窗口的左上角

HDC hDc=GetDc(NULL);//传递了空值NULL,管理的是整个屏幕从左上角到右下角,坐标系(0,0)在整个屏幕的左上角

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值