为这个问题查阅了一天的资料,最终在孙鑫老师的视频教程里得到了类似的答案,做了一下简单修改,记
录如下:
我所用的是FormView,代码写在OnPaint中:
CBitmap bitmap;//定义一个位图对象
bitmap.LoadBitmap(IDB_BITMAP1);//载入位图
CDC *pDC=CDC::FromHandle(::GetDC(GetDlgItem(IDC_PIC)->GetSafeHwnd()));//获取控件的DC
BITMAP bmp;//定义一个BITMAP结构体变量
bitmap.GetBitmap(&bmp);//获取位图对象的信息,保存在bmp这个结构体变量中
CDC dcCompatible;//定义一个DC
dcCompatible.CreateCompatibleDC(pDC);//创建一个内存上下文设备DC,该DC与pDC所指向的上下文DC是兼容的;
dcCompatible.SelectObject(&bitmap);//将一个对象选入到上下文设备中,这里指兼容DC
CRect rect;//定义一个矩形区域,用来保存显示区域大小
GetDlgItem(IDC_PIC)->GetWindowRect(&rect);//保存显示区域大小
pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcCompatible,
0,0,bmp.bmWidth,bmp.bmHeight,SRCCOPY);//绘图