需要先建一个显示类,这个显示类的基类我选的是CStatic,以下代码均放在这个显示类中,另外需在这个类的.h文件中添加CDib m_CDib;

另外,CDIB类文件需要自己添加。

1、图像的打开:

void CStaticImage::ImageOpen()
{CString pathName;          //文件路径CString fileName;             //文件名//定义一个文件对话框,并设置属性CFileDialog  Dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT | OFN_FILEMUSTEXIST,NULL, NULL);if(Dlg.DoModal() == IDOK){pathName = Dlg.GetPathName();fileName = Dlg.GetFileTitle();SetWindowText(fileName);}CFile file;CFileException e;if(file.Open(pathName, CFile::modeRead,&e)){m_Dib.Read(&file);file.Close();RedrawWindow();}
}

2、图像的显示:

图像的显示:
void CStaticImage::OnPaint()
{CPaintDC dc(this); // device context for painting// TODO: Add your message handler code hereCRect rect;GetClientRect(&rect);            //获取客户区大小CPoint point;CSize size;size  = rect.Size();point = rect.TopLeft();m_Dib.Draw(&dc, point, size);
}

(这个OnPaint函数是消息处理函数,添加即可)

3、图像的保存:

void CStaticImage::ImageSave()
{CString pathName;CString fileName;CString strFilter = _T(".bmp");  CFileDialog  Dlg(FALSE, "*.bmp", _T("path.bmp"),  OFN_OVERWRITEPROMPT |OFN_CREATEPROMPT , strFilter); if(Dlg.DoModal() == IDOK){CFile file;CFileException e;pathName = Dlg.GetPathName();if(file.Open(pathName, CFile::modeCreate | CFile::modeReadWrite | CFile::shareExclusive | CFile::shareDenyWrite | CFile::modeNoTruncate, &e)){m_Dib.Write(&file);file.Close();}}
}

结合CDIB类,对图像的打开、显示、保存相关推荐

  1. 用python简单处理图片(1):打开\显示\保存图像

    一提到数字图像处理,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因此, ...

  2. python PIL 打开\显示\保存图像

    转自:https://www.cnblogs.com/denny402/p/5096001.html 使用python进行数字图片处理,还得安装Pillow包.虽然python里面自带一个PIL(py ...

  3. python图片保存需要在图片展示后_用python处理图片之打开\显示\保存图像的方法...

    一提到数字图像处理,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因此, ...

  4. 用python打开\显示\保存图像

    一.打开图片: from PIL import Image img=Image.open(r'图片路径') img.show() 二.显示图片:(在坐标轴里) from PIL import Imag ...

  5. python image库保存图片_python PIL 打开\显示\保存图像

    使用python进行数字图片处理,还得安装Pillow包.虽然python里面自带一个PIL(python images library), 但这个库现在已经停止更新了,所以使用Pillow, 它是由 ...

  6. 计算机视觉__基本图像操作(显示、读取、保存)

    计算机视觉__基本图像操作(显示.读取.保存) 本文目录: ✨ 一.前言 ✨ 二.图像显示(使用OpenCV和Matplotlib显示图像) (1).使用OpenCV显示图像 (2).使用Matplo ...

  7. c#图像处理入门(-bitmap类和图像像素值获取方法)

    c#图像处理入门 -bitmap类和图像像素值获取方法 一.Bitmap类 Bitmap对象封装了GDI+中的一个位图,此位图由图形图像及其属性的像素数据组成.因此Bitmap是用于处理由像素数据定义 ...

  8. C#中的bitmap类和图像像素值获取方法

     private void button1_Click_1(object sender, EventArgs e)         {             // 画直线 //Bitmap bitM ...

  9. android开发图片格式,Android程序开发如何处理图像格式类及图像转换

    在Android程序开发过程中,明确哪些图像格式类(ImageFormat.PixelFormat及BitmapConfig等)及图像(JPG.PNG及BMP等)的转换方式非常重要,在以后的程序开发过 ...

最新文章

  1. 关于while 和if
  2. java笔记之字符串,gc
  3. Android根据baidu Android定位SDK实现定位
  4. SpringMVC 中 @RequestBody 接收Json数组对象及对象参数中有数组参数
  5. 软件测评:如何做软件项目验收测试报告 ?
  6. 如何申请Xilinx的评估IP
  7. 714. 买卖股票的最佳时机含手续费
  8. 微软软件实现技术授课系列内容之五:软件测试基础
  9. oracle限制查询条数-rownum用法详解
  10. 实验六201771010101 白玛次仁
  11. pytest文档56-插件打包上传到 pypi 库
  12. 网易云歌单歌曲实时拉取
  13. Ubuntu学习NO7.Ubuntu指令训练集合
  14. 模棱两可的生物学概念问题辨析1
  15. C语言:将数据保存到文本文件
  16. 用Jquey实现双击图片放大和触摸放大的功能。
  17. php mssql 存储过程 输入参数,MSSQL_SQL Server存储过程中使用表值作为输入参数示例,在2008之前如果我们想要将表作 - phpStudy...
  18. oracle 修改时间字段的格式
  19. 维特根斯坦 《逻辑哲学论》、《哲学研究》
  20. 计算机对医学的应用与意义,计算机在医学中的应用(一)

热门文章

  1. java rsa加密 加签_RSA加密解密与加签验签
  2. 虚拟服务器的外部跟内部端口,虚拟服务器设置 外部端口
  3. vscode更改配置文件路径_VsCode的jsconfig配置文件说明详解
  4. mysql 5.5 编译参数_mysql5.5编译安装
  5. linux备份数据库软件有哪些内容,Linux网络备份MySQL数据库的应用方法
  6. OpenCV-Python实战(番外篇)——OpenCV实现图像卡通化
  7. jsp面试问题_JSP面试问答
  8. c ++中字符串长度的_C ++中的字符串长度
  9. java匿名类_Java匿名类
  10. Java System.arraycopy()方法示例