您的位置:首页 > 其它

为对话框设置背景图片为指定的bmp文件

2007-12-23 13:42 351 查看
重写OnEraseBkgnd(CDC* pDC)函数为如下:

BOOL CchessDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
HBITMAP hBmp = (HBITMAP)LoadImage(AfxGetInstanceHandle(),"images//backfile.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
if(hBmp==NULL)
{
MessageBox("请检查您的背景图片文件backfile.bmp!","提示");
return CDialog::OnEraseBkgnd(pDC);
}
HDC hMemDC = CreateCompatibleDC(pDC->m_hDC);
CBitmap bmp;
bmp.Attach(hBmp);
BITMAP bm;
bmp.GetBitmap(&bm);
SelectObject(hMemDC,hBmp);
CRect rc;
GetClientRect(rc);
StretchBlt(pDC->m_hDC,0,0,rc.Width(),rc.Height(),hMemDC,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
bmp.DeleteObject();
return TRUE;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: