GUI作图概述
作图步骤
- 获得设备描述表资源句柄
- 绘图操作
- 释放设备描述表资源句柄
流程图如下:
获取/释放设备资源描述表
- 获取设备资源描述表: BeginPaint / GetDC
- 释放设备资源描述表: EndPaint / ReleaseDC
BeginPaint / GetDC 两种方式的区别:
BeginPaint GetDC
使用环境 只用于图形刷新时获取设备环境 使用较为广泛
操作区域 无效区 特定窗口的客户区或者整个窗口
释放设备环境所用函数 ReleaseDC () EndPaint ()代码示例:
在 WM_PAINT 添加 BeginPaint 事件,在 WM_LBUTTONDOWN 添加 GetDC 事件.
BeginPaint 使用:
//获得资源DC hdc=BeginPaint(hwnd,&ps); //获得窗口大小 GetClientRect(hwnd,&rect); //绘制文本 DrawText(hdc,"hellow my first windows program",strlen("hellow my first windows program"),&rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); //释放资源DC EndPaint(hwnd,&ps);
GetDC 使用:
//获得设备资源描述表 hdc = GetDC(hwnd); //绘制带圆角矩形 RoundRect(hdc,10,10,110,60,10,10); //释放设备资源描述表 ReleaseDC(hwnd,hdc);
运行结果:
单击鼠标右键和重绘窗口时
在单击鼠标右键后
绘图操作分类
- 描绘图形
- 位图
- 文本输出
与设备描述表相关函数
- 背景色: GetBkColor SetBkColor
- 背景模式: GetBkMode SetBkMode
- 位图: CreateBitMap CreateBitMapIndirect CreateCompatibleBitmap SelectObject
- 画刷: CreateBrushIndirect CreateDIBPatternBrush CreateHatchBrush CreatePatternBrush CreateSolidBrush Sele
绘图(VC_Win32)
最新推荐文章于 2021-05-21 09:46:43 发布
本文详细介绍了在Windows GUI环境中进行绘图的步骤和方法,包括获取和释放设备描述表资源,描绘图形,处理位图,输出文本,以及设置画刷、画笔和字体等。通过代码示例展示了如何使用BeginPaint、GetDC等函数,以及各种绘图函数如Rectangle、Ellipse等,还涵盖了位图的加载和显示,以及文本输出的相关操作。
摘要由CSDN通过智能技术生成