2010-06-12 46 views
2

我的瀏覽按鈕的代碼是如何使用MFC來從文件加載圖像

void CFileOpenDlg::OnBnClickedButton1() 
{ 
// TODO: Add your control notification handler code here 
CFileDialog dlg(TRUE); 
int result=dlg.DoModal(); 
if(result==IDOK) 
{ 
    path=dlg.GetPathName(); 
    UpdateData(FALSE); 
} 
} 

,這是加載從資源圖像的代碼,但不從文件加載圖像工作。我知道LoadImage();用於此,但如何?我如何編輯此代碼以從文件加載圖像。 Plzz幫助.....

void CFileOpenDlg::OnBnClickedButton2() 
{ 
// TODO: Add your control notification handler code here 
CRect r; 
CBitmap* m_bitmap; 
CDC dc, *pDC; 
BITMAP bmp; 
m_bitmap = new CBitmap(); 
m_bitmap->LoadBitmapW(IDB_BITMAP1); 
m_bitmap->GetBitmap(&bmp); 
pDC = this->GetDC(); 
dc.CreateCompatibleDC(pDC); 
dc.SelectObject(m_bitmap); 
pDC->BitBlt(200, 200, bmp.bmWidth, bmp.bmHeight, &dc,0 , 0, SRCCOPY); 
m_bitmap->DeleteObject(); 
m_bitmap->Detach(); 
} 

回答

3

MSDN LoadImage

HANDLE hBitMap = ::LoadImage(0, "c:\\mybmp.bmp",IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); 
CBitmap bmp; 
bmp.Attach((HBITMAP)hBitMap); 
2

如果你想打開.JPG,.PNG ......最終,你可以使用的CImage(是MFC和ATL之間共享類)

CImage image; 
image.Load ("picture.jpg"); 
image.Draw (pDC , 200, 200);