现在的位置: 首页 > 综合 > 正文

vc双缓冲绘图?

2013年08月28日 ⁄ 综合 ⁄ 共 524字 ⁄ 字号 评论关闭

    CRect myClient;     

CDC dcMemory;  

   CBitmap bitmap;    

dcMemory.CreateCompatibleDC(&dc);   

  GetClientRect(&myClient);    

bitmap.CreateCompatibleBitmap(&dc, myClient.right, myClient.bottom);    

dcMemory.SelectObject(&bitmap);

  //draw yourself thing  

//在此进行绘图

 

    dc.BitBlt(0, 0, myClient.right, myClient.bottom, &dcMemory, 0, 0, SRCCOPY);    

 bitmap.DeleteObject();        dcMemory.DeleteDC(); 

//=================================================== 最后在更新时注意,不要刷新背景!(this->Invalidate(FALSE)),里面的参数需要FALSE!(注意!)

 

看似这么几句简单的代码,感觉实际上浪费了很多的内存,可不可以有其他的好方法那!

抱歉!评论已关闭.