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

做网站开发要学什么软件如何开网站呢

做网站开发要学什么软件,如何开网站呢,天津网站设计网站制作,郑州优化疫情防控措施相关类 CDocument提供了一个用于管理数据的类,封装了关于数据的管理(数据提取、数据转换、数据存储等),并和视图类进行数据交互。 文档类使用 定义一个自己的文档类,派生自CDocument 程序的创建过程 1.利用框架类对象地址pFrame调用Load…

相关类

CDocument提供了一个用于管理数据的类,封装了关于数据的管理(数据提取、数据转换、数据存储等),并和视图类进行数据交互。

文档类使用

定义一个自己的文档类,派生自CDocument

程序的创建过程

1.利用框架类对象地址pFrame调用LoadFrame函数,创建框架窗口
2.在处理框架窗口的WM_CREATE消息时,动态创建视图类对象,并创建视图窗口
3.在处理视图窗口的WM_CREATE消息时,将文档类对象和视图类对象建立关联关系。

文档类对象用一个链接成员变量,保存视图类对象地址
视图类对象用一个普通成员变量,保存文档类对象地址

一个文档类对象可以对应多个视图类对象,而一个视图类对象只能对应一个文档类对象。

窗口切分

相关类
CSplitterWnd-不规则框架窗口类,封装了关于不规则框架窗口的操作。

窗口切分的使用

  1. 重写CFrameWnd类的成员虚函数OnCreateClient
  2. 在虚函数中调用CSplitterWnd::CreateStatic创建不规则框架窗口
  3. 在虚函数中调用CSplitterWnd::CreateView创建视图窗口

文档类和视图类的关系

视图类成员函数
获取和视图类对象关联的文档类对象,调用GetDocument()
文档类成员函数
当文档类数据发生变化时,调用UpDataAllViews刷新和文档类对象相关联的视图类对象(视图窗口)。

代码示例


#include <afxwin.h>
#include <afxext.h>
#include "resource.h"class CMyDoc : public CDocument {DECLARE_MESSAGE_MAP()public:afx_msg void OnNew();CString str;};BEGIN_MESSAGE_MAP(CMyDoc, CDocument)ON_COMMAND(ID_NEW, &CMyDoc::OnNew)
END_MESSAGE_MAP()void CMyDoc::OnNew()
{str = "Hello World"; // 接收到的数据//this->UpdateAllViews(NULL); // 刷新和这个文档类对象关联的所有视图窗口//this->m_viewList;POSITION pos = this->GetFirstViewPosition();//拿到m_viewList链表的迭代器CView* pView = this->GetNextView(pos);	//得到第一个节点 再调一遍this->GetNextView(pos); 获取第二个节点this->UpdateAllViews(pView); // 刷新除了pView 这个视图窗口之外的其他视图窗口}class CMyView : public CView {DECLARE_DYNCREATE(CMyView) // 动态创建机制 声明DECLARE_MESSAGE_MAP()
public :virtual void OnDraw(CDC* pDC);afx_msg int OnCreate(LPCREATESTRUCT pcs);
};
IMPLEMENT_DYNCREATE(CMyView, CView) // 动态创建机制 实现BEGIN_MESSAGE_MAP(CMyView, CView)//ON_WM_CREATE()
END_MESSAGE_MAP()int CMyView::OnCreate(LPCREATESTRUCT pcs) {return CMyView::OnCreate(pcs); 
}void CMyView::OnDraw(CDC* pDC) {//获取与当前视图对象相关的文档类// 方式一//CMyDoc* pDoc = (CMyDoc*)this->m_pDocument;// 方式二CMyDoc* pDoc = (CMyDoc*)this->GetDocument();pDC->TextOut(100,100, pDoc->str);
}class CMyFrameWnd :public CFrameWnd {DECLARE_MESSAGE_MAP()
public:afx_msg int OnCreate(LPCREATESTRUCT pcs);virtual BOOL OnCreateClient(LPCREATESTRUCT pcs ,CCreateContext* pContext);public:CSplitterWnd split;};
BEGIN_MESSAGE_MAP(CMyFrameWnd, CFrameWnd)ON_WM_CREATE()
END_MESSAGE_MAP()int CMyFrameWnd::OnCreate(LPCREATESTRUCT pcs) {return CFrameWnd::OnCreate(pcs);// 动态创建视图类对象,并创建视图窗口
}//窗口切分
BOOL CMyFrameWnd::OnCreateClient(LPCREATESTRUCT pcs, CCreateContext* pContext) {//创建2个视图窗口		split.CreateStatic(this,1,2);split.CreateView(0,0,pContext->m_pNewViewClass,CSize(100,100),pContext);split.CreateView(0,1,pContext->m_pNewViewClass, CSize(100, 100), pContext);return true;
}class CMyWinApp :public CWinApp {
public:virtual BOOL InitInstance();
};BOOL CMyWinApp::InitInstance() {CMyFrameWnd* pFrame = new CMyFrameWnd;CMyDoc* pDoc = new CMyDoc;CCreateContext cc;cc.m_pNewViewClass = RUNTIME_CLASS(CMyView);// 拿到CMyView类的静态变量&CMyView::classCMyViewcc.m_pCurrentDoc = pDoc;//创建了框架窗口pFrame->LoadFrame(IDR_MENU1,WS_OVERLAPPEDWINDOW,NULL,&cc);m_pMainWnd = pFrame;pFrame->ShowWindow(SW_SHOW);pFrame->UpdateWindow();return TRUE;
}CMyWinApp theApp;
http://www.dtcms.com/wzjs/321117.html

相关文章:

  • 可以做调查问卷的网站推广的方式有哪些
  • 安徽做网站找谁百度推广联盟
  • 武汉网络公司武汉做网站公司制定营销推广方案
  • 厦门加盟网站建设网站建设公司开发
  • 北京专门做网站的公司搜索引擎优化的流程是什么
  • 济南做网站推广哪家好南宁seo营销推广
  • table做网站佛山seo
  • 做班级网站的目的十大app开发公司排名
  • 北京哪家做网站优化北京计算机培训机构前十名
  • 河南做网站公司排名爱站网排名
  • 茂名做网站的公司效果好的关键词如何优化
  • 如何做免费的网站百度推广的渠道有哪些
  • 做苗木网站哪个公司好北京seo关键词排名优化软件
  • 电子商务网站建设期末考试发广告平台有哪些
  • 注册建设通网站首页爱站网排名
  • 青海高端网站建设公司投资网站建设方案
  • 做高仿网站优秀网站设计
  • 做网站需要走哪些程序百度快速排名用什
  • 网站开发好了如何上线快速网站推广公司
  • wordpress建论坛江西短视频seo搜索报价
  • 乐清人才网官方网站网络推广服务外包公司
  • 做网站编辑要会什么电子制作网站
  • 网站开发 改进湖南网站设计
  • 网站轮播效果怎么做的广东深圳疫情最新
  • 电商网站分析报告怎么做网店怎么推广和宣传
  • 成交型网站倡导公司今天最新新闻报道
  • 安阳网站制作直通车关键词优化
  • 独立网站怎么做seoseo技术服务外包公司
  • 那种网站建设软件最好企业营销培训课程
  • 挂机宝 可以做网站今日小说排行榜