当前位置: 首页 > news >正文

MFC - Picture Control 控件显示图片

1 VS2015 新建一个对话框工程,如图拖入三个控件,将 Picture Control 控件,修改属性 ID 为 IDC_IMAGE ,将 Edit Control 控件,修改属性 ID 为 IDC_EDIT_FILEPATH。

2 双击 Button 按钮,函数中实现。

//浏览
void CBase64DemoDlg::OnBnClickedButtonBrowser()
{// TODO: Add your control notification handler code here//选择图片CFileDialog fileDlg(TRUE, _T("png"), NULL, 0, _T("image Files(*.bmp; *.jpg;*.png)|*.JPG;*.PNG;*.BMP|All Files (*.*) |*.*||"), this);//打开文件选择窗体 //如果点击“取消”按钮,直接退出if (fileDlg.DoModal() == IDCANCEL) return; //获取图片路径(包含名称) //既有路径又有文件名,如D:/lena.jpgCString strFilePath = fileDlg.GetPathName();SetDlgItemText(IDC_EDIT_FILEPATH, strFilePath);//只获取文件名,如lena.jpg//CString strFileName = fileDlg.GetFileName();//判断路径不为空if (strFilePath == _T("")){return;}//使用CImage的Load、Draw函数显示图像CImage image;image.Load(strFilePath);//学习下CImage的属性,无其他意义//int x = image.GetWidth(); //int y = image.GetHeight();//获取控件的矩形CRect rectControl;  //控件矩形对象//Picture Control的ID为IDC_IMAGECWnd  *pWnd = GetDlgItem(IDC_IMAGE); pWnd->GetClientRect(&rectControl);//以控件为画布,在其上画图CDC *pDc = GetDlgItem(IDC_IMAGE)->GetDC();//绘图前必须调用此函数(设置缩放模式),否则失真严重SetStretchBltMode(pDc->m_hDC, STRETCH_HALFTONE);//画图(以下两种方法都可) //将图片绘制到Picture控件表示的矩形区域image.StretchBlt(pDc->m_hDC, rectControl, SRCCOPY);//image.Draw(pDc->m_hDC, rectControl);                image.Destroy();pWnd->ReleaseDC(pDc);
}

3 编译运行,点击浏览按钮,找到准备好的图片,选中,运行效果。

参考:

MFC在Picture控件上显示图像、保存图像
https://www.cnblogs.com/xixixing/p/12678709.html

http://www.dtcms.com/a/569658.html

相关文章:

  • 同一个网口有两个同名相机
  • mfc140.dll文件的丢失问题怎么处理?mfc140.dll文件的具体作用是什么
  • 第6章 支持向量机
  • 网站建设与管理大作业总结如何建设一个公众号电影网站
  • 网站模板去哪下载软件公司是干嘛的
  • rag:给大模型更精确的开端
  • Linux权限(5)
  • CVE-2025-4334 深度分析:WordPress wp-registration 插件权限提升漏洞
  • 【题解】洛谷 P3980 [NOI2008] 志愿者招募 [最大流最小费用]
  • Fastapi服务在高并发情况下大量超时问题排查
  • 分类与回归算法(二) - 线性回归
  • 中国建设银行官网站企业企业信息网查询
  • [创业之路-709]:管理与经营的异同
  • 网站的数据库在哪里专业上海网站建设
  • 使用IOT-Tree Server通过S7 Eth协议连接西门子PLC S7-1200
  • 59网一起做网站如何把字体安装在wordpress
  • PostgreSQL 之上的开源时序数据库 TimescaleDB 详解
  • wordpress网站投放广告网站后台管理图片
  • 查询域名网站软文写作是什么意思
  • TCN-Transformer-GRU时间卷积神经网络结合编码器组合门控循环单元多特征分类预测Matlab实现
  • 类和对象(中):深入理解 C++ 类与对象:6 个默认成员函数核心解析
  • 中山哪里有做微网站的中国经济网
  • win11蓝屏笑脸提示重启怎么回事 蓝屏重启解决方法
  • 佰力博检测与你探讨压电薄膜介电/阻抗-频谱的应用领域有哪些
  • 长沙教育类网站建设好兄弟资源网
  • C++:哈希表的实现
  • 本地化部署后定制解决方案
  • Java中的WebSocket与实时通信!
  • SQL server创建数据表
  • MacOS-Terminal直接command解压缩文件文件夹