首先是创建工程RandBackGroundDlg。。。。
在RandBackGroundDlg中添加EraseBKGND响应事件
当然还得有图片了。。。CBitmap m_Bitmap[NUMBER];
在初始化中LoadBitmap图片
在EraseBKGND中实现中加下如下代码:
BOOL CRandBackGroundDlg::OnEraseBkgnd( CDC* pDC )
{
CRect rect;
BITMAP bitmap;
GetClientRect(&rect);
SYSTEMTIME ti;
GetLocalTime(&ti);
srand(time(NULL));
int i = rand()%4;
m_Bitmap[i].GetBitmap(&bitmap);
CDC memDC;
memDC.CreateCompatibleDC(pDC);
memDC.SelectObject(&m_Bitmap[i]);
pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
//SetTimer(1,1000,NULL);
return TRUE;
}
如果你想在程序运行后每隔一段时间更换背景的话。
只要创建一上定时器就行了。。。。实现的方法和上面的代码 相同。。。
上课去了。。。。闪人。。。。。。。。。。。。。