c++ - 如何使用MFC从文件加载图像

标签 c++ 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();
}

最佳答案

MSDN LoadImage

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

关于c++ - 如何使用MFC从文件加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3029780/

相关文章:

c++ - 将项目添加到 CTreetrl C++

c++ - 在 MFC 中绘制后更新显示

c++ - 替换 Windows 任务对话框中的文本 “OK” 、 “Cancel” 、 “Yes” 、 “No”

c++ - 如何在 _T 包装器中使用变量?

c++ - 通过用于排序 std::set 的显式构造函数自定义比较器

C++:如何使用 cout 正确打印出 long long int

c++ - 从/向文件读写 double

c++ - 编辑控件替换背景需要选择HBRUSH吗?

c++ - 从 C++ 应用程序在 Windows 照片查看器中打开 .bmp

c++ - 奇怪的错误 char 的加密 (ascii)