在开发程序时候出现这种情况:前台画面变化时,需要重画背景,以抹去上次所画的前台画面,但是这样速度快的时候,整个画面会闪烁的很厉害。据说双图像缓冲技术可以消除这种闪烁,具体是如何实现的呢?若能解决,小弟不胜感激
解决方案 »
- 请教一个DirectX SDK编程的基础问题
- CDatabase与CRecordset之间的关系
- 修改文件时间时出现错误
- 求助:如何在一个.cpp代码中使用另一个.cpp中定义的变量?
- PreTranslateMessage(MSG* pMsg) 函数中可否识别出弹出菜单单击事件是由哪个菜单项引发的
- 我下载了Cximage,可我不会怎样在我的PROJECT中用它,谁能教教我吗?
- Socket连接问题
- 网络编程的一个小问题
- 想编网络程序要一些什么基础或要看一些什么书
- 如何避免用户在LISTCTRL中同时选择多项
- unsigned char 与CString 如何转换
- 关于recv , send 数据结构的问题!!!!!!!!!!!!!!!!!
我blog上也写过,可惜现在打不开,csdn blog有点差劲
http://blog.csdn.net/seu07201213/
CBitmap m_bmp;
CDC m_compatdc;
CRect rect;
this->GetClientRect(rect);
CDC *dc=this->GetDC();
if(!m_compatdc.CreateCompatibleDC(NULL))
{
::PostQuitMessage(0);
}
m_bmp.CreateCompatibleBitmap(dc, rect.Width(), rect.Height()); m_compatdc.SelectObject( &m_bmp);
你的绘图代码
dc->BitBlt(rect.left, rect.top,rect.Width(), rect.Height(), &m_compatdc, 0, 0, SRCCOPY); m_bmp.DeleteObject(); this->ReleaseDC(dc);