1. 程式人生 > >在Picture Control控制元件上顯示JPG圖片並讓圖片適應控制元件的大小

在Picture Control控制元件上顯示JPG圖片並讓圖片適應控制元件的大小

CImage  image;
	int cx, cy;  
	CRect   rect;  
	//根據路徑載入圖片  
	char strPicPath[]="D://Test11.jpg";
	image.Load(strPicPath);    
	//獲取圖片的寬 高
	cx  = image.GetWidth();  
	cy  = image.GetHeight();  

	CWnd *pWnd = NULL;  
	pWnd= GetDlgItem(IDC_PICTURE);//獲取控制元件控制代碼
	//獲取Picture Control控制元件的客戶區
	pWnd->GetClientRect(&rect);
  
	CDC *pDc = NULL;  
	pDc = pWnd->GetDC();//獲取picture control的DC  
	//設定指定裝置環境中的點陣圖拉伸模式
	int ModeOld=SetStretchBltMode(pDc->m_hDC,STRETCH_HALFTONE); 
	//從源矩形中複製一個位圖到目標矩形,按目標裝置設定的模式進行影象的拉伸或壓縮
	image.StretchBlt(pDc->m_hDC,rect,SRCCOPY);
	SetStretchBltMode(pDc->m_hDC,ModeOld); 
	ReleaseDC(pDc);