如何在对话框里显示1张bmp图片.docVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何在对话框里显示1张bmp图片

如何在对话框里显示一张bmp图片?比如我有两张图片,C:\1.BMP,C:\2.BMP 然后我通过选择路径,先把1显示在对话框上,然后在显示2...就类似于图片查看器那种 我记得有个MFC的类叫?m_Pic.SetBitmap来着,可以显示一张图片的,但是我对MFC不感冒呀,不 想去学已经封装的东西,所以各位大大给个思路............. CODE: ??CBitmap?bitmap; ??bitmap.LoadBitmap(IDB_BITMAP1); ??BITMAP?bmp; ??bitmap.GetBitmap(bmp); ??CDC?dcCompatible; ??dcCompatible.CreateCompatibleDC(pDC); ??dcCompatible.SelectObject(bitmap); ??CRect?rect; ??GetDlgItem(ID号)-GetWindowRect(rect); ??pDC-StretchBlt(0,0,rect.Width(),rect.Height(),dcCompatible, ????0,0,bmp.bmWidth,bmp.bmHeight,SRCCOPY); ps:不知道有没有写错?哈哈 void?Draw(HDC?hdc,?LPCWSTR?file) { Graphics?g(hdc); Bitmap?bmp(file); g.DrawImage(bmp,?0,?0); } int?cx=1024,?cy=768; LPCTSTR?lpszBmpFile=F:\\123.bmp; HBITMAP?bitmap=(HBITMAP)::LoadImage(NULL,?lpszBmpFile,?IMAGE_BITMAP,?cx,?cy,?LR_LOADFROMFILE); HDC?hdcMem=CreateCompatibleDC(NULL); SelectObject(hdcMem,?bitmap); DeleteObject(bitmap); ?? HDC?hdc=::GetDC(m_hWnd); BitBlt(hdc,?0,?0,?cx,?cy,?hdcMem,?0,?0,?SRCCOPY); DeleteDC(hdc); void CShowimageDlg::OnButton1() { CFileDialog dlg(TRUE,bmp,.bmp,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,位图文件(*.BMP)|*.BMP||); if(dlg.DoModal()==IDOK) { ?? hwnd = GetDlgItem(IDC_PIC); //IDC_PIC为图片控件ID ?? hDesDC = hwnd-GetDC()-m_hDC; ?? hSrcDC = CreateCompatibleDC(hDesDC); ?? hBitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),dlg.GetPathName(),IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION); ?? ?? GetObject(hBitmap, sizeof BITMAP, bm); ?? SelectObject(hSrcDC, hBitmap); ?? ?? hwnd-GetClientRect(rect); ?? ::SetStretchBltMode(hDesDC,COLORONCOLOR);?????? ?? ::StretchBlt(hDesDC, rect.left, rect.top, rect.right, rect.bottom, hSrcDC, 0, 0, bm.bmWidth, bm.bmHeight,+SRCCOPY); ?? UpdateData(false); } } void CShowimageDlg::OnPaint() { if (IsIconic()) { ?? CPaintDC dc(this); // device context for painting ?? SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0); ?? // Center icon in client rectangle ?? int cxIcon = GetSystemMetrics(SM_CXICON); ?? int cyIcon = GetSystemMetrics(SM_CYICON); ?? CRect rect; ??

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档