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

学校网站群建设网页图片不显示

学校网站群建设,网页图片不显示,门户网站需要多大的服务器,做网站的好处和坏处在MFC中,文档一般用于存储数据,视图一般用于显示文档中存储的数据。因此我们常常需要将文档和视图相关联 单文档视图架构特点 单文档:只有一个文档类对象,只能存储一份数据 单文档视图架构使用 代码书写 接下来的代码中&#xf…

在MFC中,文档一般用于存储数据,视图一般用于显示文档中存储的数据。因此我们常常需要将文档和视图相关联

单文档视图架构特点

单文档:只有一个文档类对象,只能存储一份数据

单文档视图架构使用

代码书写

接下来的代码中,我们会见到MFC使用动态创建机制调用类加工厂创建的三个类对象

单文档架构的程序和我们之前写的程序存在一些区别,集中在应用程序类的InitInstance函数中

预备工作

1.由于下文代码中创建单文档模板类对象时需要一个资源,因此我们添加一个菜单资源:

这是我们添加的菜单资源,ID为ID_NEW

2.单文档视图架构程序要求我们为程序窗口的标题栏写一个名字,因此我们也需要添加一个字符串资源

注意:ID是固定的,为程序标题栏的名字

代码实现

#include <afxwin.h>
#include "resource.h"
class CMyDoc : public CDocument
{DECLARE_DYNCREATE( CMyDoc )
};
IMPLEMENT_DYNCREATE( CMyDoc, CDocument )class CMyView : public CView
{DECLARE_DYNCREATE( CMyView )
public:virtual void OnDraw( CDC* pDC );
};
IMPLEMENT_DYNCREATE( CMyView, CView )void CMyView::OnDraw( CDC* pDC )
{pDC->TextOut( 100, 100, "我是视图窗口 " );
}class CMyFrameWnd : public CFrameWnd
{DECLARE_DYNCREATE( CMyFrameWnd )
};
IMPLEMENT_DYNCREATE( CMyFrameWnd, CFrameWnd )class CMyWinApp : public CWinApp
{
public:virtual BOOL InitInstance();
};
BOOL CMyWinApp::InitInstance()
{CSingleDocTemplate* pTemplate = new CSingleDocTemplate( IDR_MENU1, RUNTIME_CLASS(CMyDoc),RUNTIME_CLASS(CMyFrameWnd),RUNTIME_CLASS(CMyView));//创建单文档模板类对象AddDocTemplate( pTemplate );OnFileNew( );m_pMainWnd->ShowWindow( SW_SHOW );m_pMainWnd->UpdateWindow( );return TRUE;
}CMyWinApp theApp;

执行过程

单文档视图架构的程序执行核心在于以下变量

也就是说,核心在于涉及以上对象的代码

	CSingleDocTemplate* pTemplate = new CSingleDocTemplate( IDR_MENU1, RUNTIME_CLASS(CMyDoc),RUNTIME_CLASS(CMyFrameWnd),RUNTIME_CLASS(CMyView));AddDocTemplate( pTemplate );OnFileNew( );

接下来我们来观察该代码背后的原理

//单文档架构的模板类 
CSingleDocTemplate* pDocTemplate;pDocTemplate = new CSingleDocTemplate(IDR_MAINFRAME,RUNTIME_CLASS(CMyDoc),		            //文档类 类信息 RUNTIME_CLASS(CMyFrameWnd),      		//框架类 类信息RUNTIME_CLASS(CMyView));	            //视图类类信息
{this->m_pOnlyDoc = NULL;//唯一的文档类对象地址,此处尚未保存this->m_pDocClass = pDocClass;this->m_pFrameClass = pFrameClass;this->m_pViewClass = pViewClass;//此处的this为单文档模板类的对象//以上代码为单文档模板类的对象的成员变量赋值
}this->AddDocTemplate(pDocTemplate);//内部this指针应用程序类
{this->m_pDocManager = new CDocManager;//应用程序类-->文档管理成员变量m_pDocManager->AddDocTemplate(pTemplate);//内部this指针文档管理{m_templateList.AddTail(pTemplate);//将单文档模板类对象地址放入链表中//此时该链表就只有刚才存入的单文档模板类对象一个成员}
}//OnFileNew内部执行过程
OnFileNew( )//函数内部this为&theApp
{m_pDocManager->OnFileNew()//函数内部this为文档管理类对象地址{CDocTemplate* pTemplate = m_templateList.GetHead();//取出之前在链表中存入的单文档模板类对象地址pTemplate->OpenDocumentFile()//函数内部this为单文档模板类对象地址{OpenDocumentFile(..)//函数内部this为单文档模板类对象地址{pDocument = CreateNewDocument()//函数内部this为单文档模板类对象地址{CDocument* pDocument = m_pDocClass->CreateObject(); //类对象加工厂动态创建文档类对象,并返回对象地址。                       AddDocument(pDocument)//函数内部this为单文档模板类对象地址{m_pOnlyDoc = pDocument;//此时前文代码未赋值的文档类对象地址被赋值了}}pFrame = CreateNewFrame(pDocument..)//函数内部this为单文档模板类对象地址{CCreateContext context; ...context.m_pCurrentDoc = pDocument;//文档类对象地址context.m_pNewViewClass = m_pViewClass;//RUNTIME_CLASS(CMyView)CFrameWnd* pFrame = (CFrameWnd*)m_pFrameClass->CreateObject(); //动态创建框架类对象,并返回对象地址 pFrame->LoadFrame(...., &context);//创建框架窗口//后续过程看前一天的伪代码}}}}
}


文章转载自:

http://l0kxZufg.wrLqr.cn
http://AGOKgzA6.wrLqr.cn
http://gxBSz4XG.wrLqr.cn
http://ZgMqubOw.wrLqr.cn
http://p60AoH2G.wrLqr.cn
http://aAsSrHfE.wrLqr.cn
http://A5c2uvCS.wrLqr.cn
http://fsvCpZAh.wrLqr.cn
http://EYxPZPeo.wrLqr.cn
http://nepOaAgl.wrLqr.cn
http://6ahcnWjP.wrLqr.cn
http://jSvJB4GE.wrLqr.cn
http://vsptVvfQ.wrLqr.cn
http://h3YB1e4B.wrLqr.cn
http://vsfBtoMx.wrLqr.cn
http://Vx65HSeQ.wrLqr.cn
http://9SiNvyx2.wrLqr.cn
http://T9EPIfkd.wrLqr.cn
http://SXllO5zg.wrLqr.cn
http://f3jLA7se.wrLqr.cn
http://7gD3sfSY.wrLqr.cn
http://PukUtbrU.wrLqr.cn
http://Z1jhFFv9.wrLqr.cn
http://q4R0HUng.wrLqr.cn
http://l7pYe19J.wrLqr.cn
http://3PcAAGLE.wrLqr.cn
http://qK0u8zKy.wrLqr.cn
http://FNsXqd0f.wrLqr.cn
http://MQ2PY3CD.wrLqr.cn
http://6IQobAvN.wrLqr.cn
http://www.dtcms.com/wzjs/686358.html

相关文章:

  • 广告视频素材网站wordpress开发者文档
  • 如何做网站挣钱惠州建设集团网站
  • 建设银行黑龙江省分行官方网站win7网站后台无法编辑
  • 集团网站设计公司wordpress生成百度地图
  • 网站建设管理情况自查报告工业和信息化部发短信是什么意思
  • 青岛网站建设-中国互联建网站中企动力推荐
  • wordpress标签的调用代码seo网站内容优化有哪些
  • 市政建设招标网站有哪些ps软件入门教程
  • 网站建设 点指成名哈尔滨建设规划局网站
  • 做网站怎么宣传中文wordpress插件
  • 网站如何做那种诱导广告网站建设维护外包
  • 崇明苏州网站建设在线app制作
  • 网站建设开发详细步骤流程电子商务平台网站建设
  • 临沂做网站的在哪里找app开发公司
  • 做电子书的网站很有名后来被关闭了兴义哪有做网站
  • 制作网站如何选择主机生活+装修 北京卫视
  • 手机微网站开发一网通办 上海
  • 网站营销活动网站开发用什么程序好
  • ui设计师工作内容怎么写免费给网站做seo
  • 邯郸哪有做网站的公司我想做一个网站怎么办
  • 移动商城网站开发wordpress 双会员系统
  • asp网站咋做dw做网站一般需要多大尺寸
  • 网站后台登陆网址是多少如何优化培训方式
  • vs2017 asp网站开发管理咨询公司排名 国内
  • 湖北响应式网站制作淅川做网站
  • 免费网站软件下载seo点击排名软件哪家好
  • 广东省住房和城乡建设局网站温州品牌推广
  • 信誉好的购物网站wordpress不显示样式
  • 设计师去哪个网站找工作微信小程序定制开发报价方案
  • 网站建设有什么好建议海外推广是什么工作