关于窗口添加背景图片的问题

来源:百度知道 编辑:UC知道 时间:2024/06/05 17:37:51
设计一个MFC应用程序,启动窗口添加一个JPEG图片作为背景图片,我的应用程序设置了新建、打开功能,点击新建按钮后,图片还在,点击打开,弹出MFC自带的模态对话框后,图片就被刷掉了。不知道为什么。
添加JPEG格式图片采用的是GDI+功能。图片添加是在view类Ondraw()里完成的 我也不知道对不对,我觉得是我设备上下文的句柄变化了造成的 但是不会弄。请高手指导

void CMy001View::OnDraw(CDC* pDC)
{
CMy001Doc* pDoc = GetDocument();
// TODO: add draw code for native data here

Graphics graphics(pDC->m_hDC);
Image image(L"cover.jpg");
Rect destRect(0,0,1020,645);
graphics.DrawImage(&image, destRect);
graphics.ReleaseHDC(pDC->m_hDC);
}

你打开对话框的时候,对话框覆盖了你图片的那一区域,当你关闭对话框的后,系统会调用OnEraseBkgnd重绘覆盖的区域,所以那一块看不见了。

BOOL CMy001View::OnEraseBkgnd(CDC* pDC)
{

return TRUE;
}