双缓存读写问题,急救

liuqingwu228 2008-03-19 02:29:32
无闪烁背景图的绘制代码实现
/////////////// 无闪烁背景图绘制 //////////
//// 程序设计: icemen (温冰) 树爱兵
//////////////////////////////////////////////
BOOL CStrucView::OnEraseBkgnd(CDC* pDC)
{ int nWidth;
int nHeight;

//CView::OnEraseBkgnd(pDC);
CStrucDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CRect rect;
GetWindowRect(&rect);
nWidth = rect.Width();
nHeight= rect.Height();

CDC MemDC;
CBitmap MemBitmap;

MemDC.CreateCompatibleDC (NULL);
MemBitmap.CreateCompatibleBitmap(pDC,nWidth,nHeight);

CBitmap *pOldBit=MemDC.SelectObject(&MemBitmap);
MemDC.FillSolidRect(0,0,nWidth,nHeight,RGB(255,255,255));

///////////////////////////////////////////////////////
//// 以上为画背景色 //////////////
//// 以下为画背景图 //////////////
///////////////////////////////////////////////////////
GetClientRect(rect);
BITMAP bm;
CDC dcMem;
VERIFY(m_bmp.GetObject(sizeof(bm),(LPVOID)&bm));
dcMem.CreateCompatibleDC(pDC);
CBitmap *pOldBMP =( CBitmap *)dcMem.SelectObject(&m_bmp);
MemDC.BitBlt( (rect.right - bm.bmWidth)/2,
(rect.bottom - bm.bmHeight)/2,
bm.bmWidth,bm.bmHeight,&dcMem,0,0,SRCCOPY);
dcMem.SelectObject(pOldBMP);
///////////////////////////////////////////////////////
//// 以上为画背景图 //////////////
///////////////////////////////////////////////////////

pDC->BitBlt(0,0,nWidth,nHeight,&MemDC,0,0,SRCCOPY);

MemBitmap.DeleteObject();
MemDC.DeleteDC();

return TRUE;
}
/////////////// 无闪烁背景图绘制 //////////
/////////////////////////////////////////////


  注:程序中m_bmp 为相应 的 StrucView.h中定义,为位图资源类
protected:
CBitmap m_bmp;

  并应加上下面段,当然,你可在任何时候加入loadBitmap 子例程,也可加入文件资源,那由得你了!
CStrucView::CStrucView()
{
VERIFY(m_bmp.LoadBitmap(IDB_BITMAP3));
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
有没有高手知道,如何在上面背景中画上字,而不闪烁
pDC->TextOut(250,count,"nihao");加上这种语句是会闪烁
假如加上dcMem.TextOut(250,count,"veryGood");//count 是随时间增加的
它不能够把以前绘制给覆盖掉,出现很多文字,如何实现这个技术呢?
遇到好多天了,希望有好心人可以回答一下小弟心中困惑
...全文
33 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
明天去抢劫 2008-03-19
  • 打赏
  • 举报
回复
作图最好还是在OnPaint里画比较好
Yofoo 2008-03-19
  • 打赏
  • 举报
回复
TextOut 前重绘背景

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧