无闪烁背景图的绘制代码实现 
/////////////// 无闪烁背景图绘制 //////////
//// 程序设计: 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 是随时间增加的
它不能够把以前绘制给覆盖掉,出现很多文字,如何实现这个技术呢?
遇到好多天了,希望有好心人可以回答一下小弟心中困惑