如题,可以的话,如何实现,谢谢你的参与
解决方案 »
- VC++6.0环境配置问题
- opengl这段代码有什么问题吗?编译后,却运行不起来,像死机了一样
- 使用CDHtmlDialog访问某网站有时会弹出提示对话框后自动登出,但用ie程序就不会,两者有何不同?
- COM技术初探(三)
- 编译出现库文件错误!
- 在生成多个无模态的窗口释放指针的问题
- 四、 用Visual C++6.0编写一单文档应用程序,编写代码实现运行时左右并列显示三个视图,左视图和中间视图的宽度均为200,在三个视图中均
- 高分求潘爱民的<<com原理与应用>>中的例子源代码!!!!
- 谁有文章管理方面的软件?(好用、功能强大、支持多种格式)
- 毕设做一个OBJ文件读取工具 OPENGL 跪求
- 编写代理服务器的问题
- 关于资源文件的问题
{
// TODO: Add your message handler code here and/or call default
CRect rectbk;
CDC dcMen;
CBitmap bmbk;
bmbk.LoadBitmap(IDB_BITMAP1);
BITMAP stBitmap;
bmbk.GetObject(sizeof(BITMAP),&stBitmap);
CSize bmsize(stBitmap.bmWidth,stBitmap.bmHeight);
dcMen.CreateCompatibleDC(pDC);
CBitmap *pold=dcMen.SelectObject(&bmbk);
GetClientRect(&rectbk);
pDC->StretchBlt(rectbk.left,rectbk.top,rectbk.Width(),rectbk.Height(),&dcMen,0,0,bmsize.cx,bmsize.cy,SRCCOPY);
dcMen.SelectObject(pold);
dcMen.DeleteDC();
return true;
}
BOOL CClientView::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
CRect rectbk;
CDC dcMen;
CBitmap bmbk;
bmbk.LoadBitmap(IDB_BITMAP1);
BITMAP stBitmap;
bmbk.GetObject(sizeof(BITMAP),&stBitmap);
CSize bmsize(stBitmap.bmWidth,stBitmap.bmHeight);
dcMen.CreateCompatibleDC(pDC);
CBitmap *pold=dcMen.SelectObject(&bmbk);
GetClientRect(&rectbk);
pDC->StretchBlt(rectbk.left,rectbk.top,rectbk.Width(),rectbk.Height(),&dcMen,0,0,bmsize.cx,bmsize.cy,SRCCOPY);
dcMen.SelectObject(pold);
dcMen.DeleteDC();
return true;
}
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CRect Rect;
CDC dcMen;
CBitmap bmbk;
BITMAP bmp;
HBITMAP hBitmap = (HBITMAP)::LoadImage(AfxGetApp()->m_hInstance,m_strBmpFile,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
if(hBitmap == NULL)
{
TRACE("Load file failed!");
return CView::OnEraseBkgnd(pDC);
}
bmbk.Attach(hBitmap);
bmbk.GetObject(sizeof(BITMAP),&bmp);
dcMen.CreateCompatibleDC(pDC);
CBitmap *pOldBmp = dcMen.SelectObject(&bmbk);
GetClientRect(&Rect);
pDC->StretchBlt(Rect.left,Rect.top,Rect.Width(),Rect.Height(),&dcMen,0,0,bmp.bmWidth,bmp.bmHeight,SRCCOPY);
dcMen.SelectObject(pOldBmp);
dcMen.DeleteDC();
DeleteObject(hBitmap);
return true;
}
strBmpFile为位图文件名,可在其他地方修改,选择一个位图后再发送WM_ERASEBKGND消息
CDC *pDC = GetDC();
SendMessage(WM_ERASEBKGND,(WPARAM)(pDC->m_hDC),0);
ReleaseDC(pDC);
就不會失真.