首先准备一副位图,保存在工程目录下中res目录下,然后通过insert插入这个位图
接着,是重绘的消息处理函数中添加如下代码:
void CGraphic2View::OnDraw(CDC* pDC)
{
CGraphic2Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CBitmap bmp;//定义一个CBitmap的对象
bmp.LoadBitmap(IDB_BITMAP1);//通过CBitmap对象加载一副位图
BITMAP bmpInfo;//定义一个位图的对象,用来存放图片的信息
bmp.GetBitmap(&bmpInfo);//将图片的信息传进位图的对象中
CDC dcMemory;//定义一个CDC的对象
dcMemory.CreateCompatibleDC(pDC);//将pDC映射到内存中
CBitmap* pOldBitmap = dcMemory.SelectObject(&bmp);//将CBitmap选入设备描述表中
CRect rect;//定义一个矩形的对象
GetClientRect(&rect);//获取客户区的矩形区域的大小
pDC->StretchBlt(20, 20,200,200,&dcMemory,0,0,bmpInfo.bmWidth,bmpInfo.bmHeight,SRCCOPY);//将图片按照可放大和缩小的形式拷贝到客户区中指定的区域!
dcMemory.SelectObject(pOldBitmap);//将之前的位图对象选择回去!
}