MFC双缓冲 防止闪屏
2012-04-15 13:39
197 查看
好久没有写mfc的东西了。今天帮别人看改个闪屏的问题。
弄了挺久的。。写在把解决的方法写出来。
弄了挺久的。。写在把解决的方法写出来。
void CWanggeView::OnDraw(CDC* pDC) { CWanggeDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here CRect rect; GetClientRect(&rect); //建立与屏幕设备描述表(前端缓冲区)兼容的内存设备描述表句柄(后备缓冲区) MemDC.CreateCompatibleDC(NULL); //这时还不能绘图,因为没有位图的设备描述表是不能绘图的 //下面建立一个与屏幕设备描述表(或者内存设备描述表)兼容的位图 MemBitmap.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height()); //将位图选入到内存设备描述表 //只有选入了位图的设备描述表才有地方绘图,画到指定的位图上 CBitmap *pOldBit=MemDC.SelectObject(&MemBitmap); ////////////////////////////////////////////////////////////////////////////////////////////////// //绘图什么的就写在这里。。。 ////////////////////////////////////////////////////////////////////////////////////////////////// //将后备缓冲区中的图形拷贝到前端缓冲区 pDC->BitBlt(0,0,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY); //绘图完成后的清理 MemBitmap.DeleteObject(); MemDC.DeleteDC(); }
相关文章推荐
- MFC双缓冲 防止闪屏
- MFC双缓冲 防止闪屏
- c# 双缓冲(防止闪屏)
- c# 双缓冲(防止闪屏)
- MFC双缓冲作图解决刷新闪屏问题
- MFC利用双缓冲实现屏幕无闪烁刷新
- MFC绘图不闪烁——双缓冲技术
- MFC制作双缓冲无闪烁的字幕滚动条
- MFC 双缓冲技术解决屏闪问题
- MFC 防止多线程卡死
- MFC基础知识(四)——双缓冲解决刷屏时闪烁
- MFC加载PNG图片并实现双缓冲
- QT显示如何减轻闪屏(双缓冲和NoErase)
- MFC防止enter和ESC键使程序退出方法
- C#双缓冲实现方法(可防止闪屏)
- MFC 双缓冲(double buffering)
- j2me 闪屏问题及双缓冲的实现
- MFC_禁止标题栏重绘,改变标题栏,双缓冲标题栏贴图(转载)
- MFC GDI双缓冲避免图形闪烁,转载
- 双缓冲一 防止闪烁的代码