摘要: 一、MFC为什么要实现双缓冲 在MFC界面绘图中,时常会遇到界面闪烁问题,尤其是在绘图不断更新的过程中,原因是“旧”图像还没擦除,“新”图像已经绘制,附加显示器刷新率及肉眼等问题,造成图像闪烁,给用户体验降低;在该条件下,需要通过双缓冲机制进行,关于闪烁的具体解释可参考https://en.wiki 阅读全文
posted @ 2023-07-18 15:48 左边的翼 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 一、画刷简介 在官方文档中对Brush类的描述为"The Brush class is an abstract base class that defines a Brush object...",通过描述可看出,Brush类为一个抽象基类,在应用Brush对象时只能通过其实现子类实例化应用;官方文 阅读全文
posted @ 2023-07-18 10:18 左边的翼 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 构造方法1:Pen(const Brush* brush, REAL width=1.0f) 注:关于第一种构造方法中的形参(const Brush* brush)做简单说明,Brush在Gdiplus中为抽象基类,Pen在该构造方式下只能通过Brush子类进行实例化,Brush子类在后续章节将做详 阅读全文
posted @ 2023-07-17 16:44 左边的翼 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 构造方法1:Color::Color(BYTE r, BYTE g, BYTE b) 构造方法中三个参数分别为RGB值,取值范围(0-255),下面代码呈现在RGB取值下进行线的绘制: 1 Graphics graphics(dc); 2 3 Color clr(255, 0, 0); 4 Colo 阅读全文
posted @ 2023-07-17 10:31 左边的翼 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 什么是GDI+? GDI+是WinXP系统与WinServer 2003系统的一部分,为系统二维绘图提供支撑,GDI+是对GDI(Graphics Device Interface)的升级,增加了相关属性及优化了相关属性。 GDI+在MFC中配置: /**********************GD 阅读全文
posted @ 2023-07-14 17:28 左边的翼 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 程序运行后,程序的标题、边框、菜单区域等为非客户区,程序界面剩余部分为客户区域。 CDC的派生类:(https://topic.alibabacloud.com/a/basics-of-hdc-cdc-cwindowdc-cclientdc-and-cpaintdc_8_8_32337692.htm 阅读全文
posted @ 2023-07-14 14:59 左边的翼 阅读(93) 评论(0) 推荐(0) 编辑
摘要: DC(Device Context)是设备上下文或设备环境,在Windows系统中,其用于显示,在任何绘图前都要准备一个环境;例如,一个人想画画,需要一个房间,一张桌子。 MFC中提供的设备环境类为CDC,封装了绘图需要的所有函数。 阅读全文
posted @ 2023-07-14 10:47 左边的翼 阅读(546) 评论(0) 推荐(0) 编辑