vc在指定控件上绘制bmp

将bmp图片完整缩放到控件尺寸大小

//在资源中加载位图
	CBitmap bmp;
	bmp.LoadBitmap(IDB_UNTALK_BMP);
	//得到控件
	CWnd* pPic = GetDlgItem(IDC_BMP_STATIC);
	//得到控件dc
	CClientDC dc(pPic);

	//创建兼容DC
	CDC dcMem;
	dcMem.CreateCompatibleDC(&dc);
	//位图加载到内存dc中
	CBitmap *pOldBitmap=dcMem.SelectObject(&bmp);
	
	//获取Static控件的大小范围
	CRect lRect;
	pPic->GetClientRect(&lRect);  
	//在Static控件上显示位图  
	BITMAP bmp2;
	bmp.GetBitmap(&bmp2);
	dc.StretchBlt(0,0 ,lRect.Width(),lRect.Height(),&dcMem,0,0,bmp2.bmWidth,bmp2.bmHeight,SRCCOPY);
	//清理
	dcMem.SelectObject(&pOldBitmap);
	bmp.DeleteObject();


你可能感兴趣的:(windows绘图)