为对话框设置背景图片为指定的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;
}
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;
}
相关文章推荐
- 关于 android 设置背景图片时找不到指定文件的问题
- MFC对话框中设置JPG文件为背景图片
- php 中在 CCS文件中设置背景图片无效:
- VC 对话框设置背景颜色和图片
- 从文件对话框中读取一幅bmp图片,并解析图片信息(eg:获取分辨率)
- 通过xml布局文件实现按钮改变焦点设置背景图片
- VC++中给对话框设置背景图片的方法
- VC中设置了对话框背景图片的情况下不能正确显示radio控件透明
- MFC中设置对话框颜色、添加背景图片、添加音乐的方法
- VS2010解决对话框设置背景图片和文字重叠问题
- MFC中设置对话框颜色、添加背景图片、添加音乐的方法
- MFC 基于对话框的背景图片设置
- VC 对话框设置背景颜色和图片
- 设置对话框的背景颜色或者图片
- VC++对话框加背景图片设置方法
- VS2010解决对话框设置背景图片和文字重叠问题
- 加载一张bmp图片作为MFC对话框的背景
- MFC中设置对话框颜色、添加背景图片、添加音乐的方法
- 为对话框设置背景图像(图片不会被缩放)
- VC 对话框设置背景颜色和图片