学生求相助!MFC 重载了CStatic类想动态画很多图,总是会清空前一幅图

学生求帮助!MFC 重载了CStatic类想动态画很多图,总是会清空前一幅图!
        RECT rc;
rc.top = 40;
rc.bottom = 80;
rc.left = 0;
rc.right = 35;

CMyStatic *pClassBox = new CMyStatic;
pClassBox->MyCreate(rc,this,1);
pClassBox->DrawBox();


大概是这样画的,能画出来,可是当花第二幅时,第一副图就被清空了。我完全新开了一个类画第二幅图还是将第一副清空了。 画图代码如下
void CMyStatic::DrawBox()
{
HDC hDC = this->GetDC()->m_hDC;
HDC hCompatibleDC = ::CreateCompatibleDC(hDC);
CRect rect;
        GetClientRect(rect);
// CBitmap Bmp;
// Bmp.LoadBitmap(IDB_BITMAP1);
HBITMAP hBitmap = ::LoadBitmap((HINSTANCE)0x400000,(LPSTR)IDB_BITMAP1);
::SelectObject(hCompatibleDC,hBitmap);
::BitBlt(hDC,0,0,400,400,hCompatibleDC,0,0,SRCCOPY);
}

求大神指导!
MFC Bitmap

------解决方案--------------------
每次建立一个CMyStatic 都要指定不同的ID号才行,你是不是用的都是同一个ID号。
------解决方案--------------------
要在OnPaint()里画,不然的话窗口一刷新(重绘),之前画的东西就不在了
------解决方案--------------------
我记得OnEraseBkgnd得return FALSE吧

不然会自动擦除的
------解决方案--------------------
这样试一下:
[code=c] CMyStatic *m_pStatic[5];
for (int i=0; i<5; i++)       
{          
m_pStatic[i] = new CMyStatic();
m_pStatic[i]->Create(_T("Static"),WS_CHILD
------解决方案--------------------
WS_VISIBLE,CRect(60, 120+30*i, 120, 140+30*i), this, 100+i);         
m_pStatic[i]->DrawBox();
}code]
------解决方案--------------------
CMyStatic *m_pStatic[5];
for (int i=0; i<5; i++)       
{          
m_pStatic[i] = new CMyStatic();