源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

解析在WTL下使用双缓冲的实现方法

  • 时间:2021-09-09 20:23 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:解析在WTL下使用双缓冲的实现方法
使用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消息,因此,自己的类中不必再响应。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部