用bmp图片作FormView的背景在OnEraseBkgnd中实现,可是发现背景跟着窗口大小而被拉伸,使背景扭曲很难看,怎样才能做出象NetAnts左帧那样随窗口大小使背景平铺?
以下是我使用的背景算法,怎样才能达到随窗口平铺的效果?
BOOL LeftFormView::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
CDC dcmem;
dcmem.CreateCompatibleDC(pDC);
CBitmap bmp ;
bmp.LoadBitmap(IDB_LEFTBG);
CBitmap* pold =(CBitmap*)dcmem.SelectObject(&bmp);
BITMAP bm;
bmp.GetBitmap(&bm);
int swidth =bm.bmWidth;
int sheight =bm.bmHeight;
RECT rc;
GetClientRect(&rc);
int width =rc.right-rc.left;
int height =rc.bottom-rc.top;
pDC->StretchBlt(0,0,width,height,&dcmem,0,0,swidth,sheight,SRCCOPY);
dcmem.SelectObject(pold);
bmp.DeleteObject();
return FALSE;
//return CFormView::OnEraseBkgnd(pDC);
// return CFormView::OnEraseBkgnd(pDC);
}