在MFC中通过代码动态显示图片的过程包括以下几步:
1.在资源视图中导入图片。
菜单“插入”->“资源”->“Bitmap”->“引入”,插入ico或bmp格式图片。
2.在程序中插入图片。
CBitmap bitmap;
CClientDC pDC(this);
CDC dcMemory;
dcMemory.CreateCompatibleDC(&pDC);
CRect rect;
GetClientRect(rect);
bitmap.LoadBitmap(IDB_BITMAP1);
dcMemory.SelectObject(&bitmap);
pDC.StretchBlt(x1,y1,k*width,k*height,&dcMemory,0,0,width,height,SRCCOPY);
pDC.TextOut(x2,y2,str);
bitmap.DeleteObject();
dcMemory.DeleteDC();
第8行中StretchBlt()函数控制图片的显示大小,以k倍大小显示图片,其用法如下:
pDC->StretchBlt(0,0 //显示位置
int(k*bmInfo.bmWidth),int(k*bmInfo.bmHeight), //显示的宽度和高度
&dcComp, //位图所在的兼容DC
0,0 //兼容DC中的位置
bmInfo.bmWidth,bmInfo.bmHeight, //位图的宽度和高度
SRCCOP); //显示方式
//如果k比1大,则是放大;
//如果k比1小,则是缩小.