使用DDB技术实现绘图二级缓冲
CDC memDC;
memDC.CreateCompatibleDC(&dc);
// 建立一个与屏幕显示兼容的位图
CBitmap memBitmap;
memBitmap.CreateCompatibleBitmap(&dc, rect.Width(), rect.Height());
// 将位图选人到内存显示设备中
memDC.SelectObject(&memBitmap);
// 使用背景色清除位图
memDC.FillSolidRect(0,0,rect.Width(), rect.Height(), RGB(255,255,255));
// 透明
memDC.SetBkMode(TRANSPARENT);
// 添加自己的GDI/GDI+绘制函数
...
//拷贝内存图像到屏幕
dc.BitBlt(0, 0,
rect.Width(), rect.Height(),
&memDC,
0,0,
SRCCOPY );
memBitmap.DeleteObject();
memDC.DeleteDC();
参考:
GDI+二级缓存http://hi.baidu.com/sixthwinglu/item/f98056173f33f17a1009b5ce