MFC 单文档模式

这篇具有很好参考价值的文章主要介绍了MFC 单文档模式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Doc类利用自带框架存数据

void CCADDoc::Serialize(CArchive& ar)
{
	if (ar.IsStoring())
	{
		// TODO: 在此添加存储代码
		//保存数据到文件
		ar << m_nShapeCount;
		for (int i = 0; i < m_arrShapes.GetSize(); i++)
		{
			CShape* pShape = NULL;
			pShape = (CShape*)m_arrShapes[i];
			ar << pShape;

		}
	}
	else
	{
		// TODO: 在此添加加载代码,文件不为空才会走到这里
		//读取时,先要读取图形数量
		ar >> m_nShapeCount;
		for (int i = 0; i < m_nShapeCount; i++)
		{
			CShape* pShape = NULL;
			ar >> pShape;
			m_arrShapes.Add(pShape);
		}
	}
}
void CShape::Serialize(CArchive& ar)
{
	CObject::Serialize(ar);
	if (ar.IsStoring())
	{
		ar << m_ptBegin << m_ptEnd << m_nType;
	}
	else
	{
		ar >> m_ptBegin >> m_ptEnd >> m_nType;
	}
}

Doc和View两个文件中的数据交互

void CCADView::OnLButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	CCADDoc* pDoc = GetDocument();
}
void CCADDoc::Serialize(CArchive& ar)
{
	POSITION   pos = GetFirstViewPosition();
	CCADView* view = (CCADView*)GetNextView(pos);
	view->OnDraw(NULL);

}

设置Esc的响应函数

【解决方案资源管理器】->【类向导】->【消息】

MFC 单文档模式,mfc,c++

void CCADView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
	if (nChar == VK_ESCAPE)
	{
		// 处理按下 Esc 键的逻辑,例如停止编辑
		m_bEscKeyPressed = true;
	}

	CView::OnKeyDown(nChar, nRepCnt, nFlags);
}

 

参考链接:

画图程序:

MFC基于单文档实现绘图功能(线段,矩形,椭圆,圆,铅笔,橡皮),保姆式教程_mfc单文档画图_十有八九&的博客-CSDN博客

COM组件:

VS2012创建ATL工程及使用MFC测试COM组件_xhubobo的博客-CSDN博客

MFC DLL创建:

MFC创建、调用Dll的方法_mfc dll_叶子昂昂Ang的博客-CSDN博客

保存数据:

http://www.it165.net/pro/html/201408/19376.html

类调用:

MFC doc类,view类,frame类之间互相调用_LiberHW的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-524181.html

到了这里,关于MFC 单文档模式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • mfc入门基础(一)-单文档应用程序框架

    最近因为相关业务,需要接触下mfc的一些老代码,但是mfc上手并没有qt那么简单,所以四处寻找学习资料,发现一个写的挺好的教程,这边我进行转载下,学习的过程中进行了一些修改,总结下。 此处附上原文链接:鸡啄米MFC入门系列教程_逸适安然的博客-CSDN博客_鸡啄米 V

    2024年02月04日
    浏览(35)
  • MFC 单文档弹出对话框 标题图标

    创建MFC时 1、应用程序类型:以单个文档-项目样式选择MFC标准 菜单关联对话框  2、菜单关联-资源视图中的Menu-IDR_MAINFRAME(此处看想关联谁,如果是想关联一个对话框,那就先创建一个对话框再进行关联,如果是想关联一个类,可以看函数在哪个类下面从而进行关联) a.关联

    2024年02月06日
    浏览(30)
  • MFC 单文档 静态分割窗口 m_wndSplitter 状态栏

    MFC 单文档 静态分割窗口 VC++图形编程之状态栏和进度条,源码在VC6.0下测试编译通过。 第4章 状态栏与进度条/扩展实例1 带进度条的状态栏 第4章 状态栏与进度条/扩展实例2 带位图的状态栏 第4章 状态栏与进度条/扩展实例3 在状态栏中显示时间 第4章 状态栏与进度条/扩展实例

    2024年02月06日
    浏览(22)
  • 基于MFC的图书馆图书管理系统 VC++操作Excel文档的方法,读取,查询,写入,修改,删除

    VS2017加装MFC以及创建第一个MFC程序_赵满刚的博客-CSDN博客 MFC读取Excel文件+数据处理+写入Excel_土豪gold的博客-CSDN博客 VS2013 MFC连接Access数据库(ADO)详细版实例操作(含Combo Box读取数据库内容,附源码)_土豪gold的博客-CSDN博客_mfc连接access数据库 MFC 导入EXCEL到数据库_weixin_338

    2024年02月06日
    浏览(34)
  • 基于MFC的图书馆图书管理系统 VC++操作Excel文档的方法,读取,查询,写入,修改,删除

    VS2017加装MFC以及创建第一个MFC程序_赵满刚的博客-CSDN博客 MFC读取Excel文件+数据处理+写入Excel_土豪gold的博客-CSDN博客 VS2013 MFC连接Access数据库(ADO)详细版实例操作(含Combo Box读取数据库内容,附源码)_土豪gold的博客-CSDN博客_mfc连接access数据库 MFC 导入EXCEL到数据库_weixin_338

    2024年02月06日
    浏览(39)
  • MFC第十九天 记事本项目功能完善和开发、CTabCtrl类与分页模式开发

    获取选择的文字 向下查找 查找替换功能 向下 向上 不区分大小写的 替换当前选中 替换全部 打开查找编辑框需要加载的 CFileDialog 构造函数详解 pch.h CApp NotePad.cpp 对编码的解析 以及对编码格式的转换 CMainDlg.h CMainDlg.cpp CMainDlg.h CMainDlg.cpp CFileDialogXq.h CFileDialogXq.cpp CMainDlg.h CMai

    2024年02月16日
    浏览(38)
  • Visual Studio在Debug模式下,MFC工程中包含Eigen库时的定义冲突的问题

    EigensrcCorePlainObjectBase.h(143,5): error C2061: 语法错误: 标识符“THIS_FILE” EigensrcCorePlainObjectBase.h(143,1): error C2333: “Eigen::PlainObjectBase::operator new”: 函数声明中有错误;跳过函数体 EigensrcCoreCwiseNullaryOp.h(341,27): error C2039: “setConstant”: 不是 “Eigen::PlainObjectBase” 的成员 以上仅

    2024年02月14日
    浏览(27)
  • MFC第十八天 非模式对话框、对话框颜色管理、记事本项目(查找替换、文字和背景色、Goto(转到)功能的开发)

    a)调用CDialog::Create函数实现,例如:QQ的聊天框,记事本的查找等。 b)非阻塞,对象的生命期必须足够,否则就析构时摧毁了。 c)可以采用堆空间申请多例模式,也可以用全局或者成员。 d)EndDialog只对模式对话框有效,对非模式对话框无效,如果要摧毁调用DestroyWindow (只是隐

    2024年02月17日
    浏览(36)
  • 【MFC】09.MFC视图-笔记

    MFC视图窗口:CView类 显示数据/画面 我们之前的绘图消息,都是在框架类上画出来的 视图窗口就覆盖在框架窗口上 视图窗口本质上也是窗口,只是和框架窗口风格不同 CView类也继承于CWnd类 CView也能处理消息,因为它继承于CWnd类 试图窗口没有边框等 视图窗口是框架窗口的子

    2024年02月14日
    浏览(29)
  • 【MFC】01.MFC框架-笔记

    MFC Microsoft Fundation class 微软基础类库 框架 基于Win32 SDK进行的封装 属性:缓解库关闭 属性-C/C++/代码生成/运行库/MTD 属性-常规-MFC的使用:在静态库中使用MFC,默认是使用的共享DLL,运行时库 SDK版本:开发软件的套件 WSK:开发驱动的套件 MFC基于类的管理 预编译头: Demo01.h

    2024年02月14日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包