手机
当前位置:查字典教程网 >编程开发 >C语言 >解析在WTL下使用双缓冲的实现方法
解析在WTL下使用双缓冲的实现方法
摘要:使用WTL的CDoubleBufferImpl类可以方便的实现双缓冲,而不必自己实现繁琐的代码,不仅可以绘制一般窗口,也可以绘制对话框的背景...

使用WTL的CDoubleBufferImpl类可以方便的实现双缓冲,而不必自己实现繁琐的代码,不仅可以绘制一般窗口,也可以绘制对话框的背景等。

首先 #include <atlframe.h>

其次需要双缓冲画图的类需要派生自CDoubleBufferImpl<>:

class CMainDlg : public CDialogImpl<CMainDlg>, public CDoubleBufferImpl<CMainDlg>{}

然后消息链中加入

BEGIN_MSG_MAP_EX(CMainDlg)

//....

CHAIN_MSG_MAP(CDoubleBufferImpl<CMainDlg>)

END_MSG_MAP()

最后写DoPaint函数,直接画就可以了

void DoPaint(CDCHandle dc)

{ //画个矩形

dc.Rectangle(0, 0, 10, 10);

}

成了。

注意,由于CDoubleBufferImpl类响应了WM_PAINT消息和WM_ERASEBKGND消息,因此,自己的类中不必再响应。

【解析在WTL下使用双缓冲的实现方法】相关文章:

将正小数转化为2-9进制小数的实现方法

排列组合总结:将结果进行输出的实现方法

c语言中十六进制转二进制显示的实现方法

解析shell排序的实现代码

随机加密程序的实现方法

c++大数阶乘的实现方法

在VC中隐藏控制台程序窗口的实现代码

C++可变参数的实现方法

解析在Direct2D中画Bezier曲线的实现方法

美化你的代码 vb(VBS)代码格式化的实现代码

精品推荐
分类导航