MFC单文档应用程序显示图像

Posted 楚兴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC单文档应用程序显示图像相关的知识,希望对你有一定的参考价值。

1 利用VS2010向导创建一个MFC单文档应用程序MFCTest

2 在MFCTestView.h中引用<atlimage.h>,并创建一个CImage对象

#include <atlimage.h>

private:
	CImage image;
3 打开资源文件,选中Menu下面的IDR_MAINFRAME,添加一个新的菜单项“打开图像”,修改其ID为IDM_OPEN,再点击鼠标右键,添加事件处理程序,在弹出的对话框的列表中选择CMFCTestView
4 添加事件处理函数OnOpen的代码

void CMFCTestView::OnOpen()

	// TODO: 在此添加命令处理程序代码
	CFileDialog dlg(TRUE, _T(".bmp"), _T("*.bmp"), OFN_HIDEREADONLY | 
		OFN_OVERWRITEPROMPT, _T("位图文件(*.bmp)|*.bmp|JPEG文件(*.jpg)|*.jpg||"));
	if(dlg.DoModal() == IDOK)
	
		if(!image.IsNull())
		
			image.Destroy();
		
		image.Load(dlg.GetPathName());
		Invalidate();
	
5 在MFCTestView中加入图像显示的代码

void CMFCTest2View::OnDraw(CDC* pDC)

	CMFCTest2Doc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	if (!pDoc)
		return;

	// TODO: 在此处为本机数据添加绘制代码
	if(!image.IsNull())
	
		image.Draw(pDC->GetSafeHdc(), 0, 0);
	
效果如下:


以上是关于MFC单文档应用程序显示图像的主要内容,如果未能解决你的问题,请参考以下文章

在MFC的单文档中用OpenGL画图,画图函数明明运行了,为啥就是显示不出来?画图函数如下:

mfc 单文档 多文档 对话框 区别

MFC单文档 添加 多视图

mfc中MDI模式下实现单文档多视图多窗口

新建一个MFC单文档程序含有菜单和工具栏,又建了一个对话框,如何直接显示对话框?

opencv显示图片的问题