登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

杨柳千丝,绊惹春风

普通人日记

 
 
 

日志

 
 
关于我

性格还算开朗,为人还算不错。 长相一般,身高一般,能力一般,人是一般。 不会浪漫,不会情调,不会唱歌,不会跳舞,不会吸烟,不爱喝酒,不会开车,爱听老歌

MFC对话框中嵌入word之一:对话框中嵌入文档视图结构  

2011-08-30 21:16:39|  分类: 技术 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一、使用MFC向导新建“对话框程序”,在“高级功能”中勾选“自动化”

若未选择“自动化”,则在App类中增加Ole功能初始化

BOOL CXXXApp::InitInstance()

{

// 初始化 OLE

          if (!AfxOleInit())

          {

              return FALSE;

}

……

}

二、 增加以下几个类:

class COfficeView : public CView

class COfficeDoc : public COleDocument

class COleItem : public COleClientItem

 

此时编译,提示找不到COleDocumentCOleClientItem,在stdafx.h中加入头文件:

#include <afxole.h>         // MFC OLE

#include <afxodlgs.h>       // MFC OLE 对话框类

三、 对话框中引入文档视图

对话框头文件中加入以下代码:

class COfficeView;

class COfficeDoc;

class CXXXDlg : public CDialog

{

     ……

protected:

COfficeView *m_pView;

          CFrameWnd *m_pFrame;

     COfficeDoc  *m_pDoc;

     ……

}

对话框实现文件中:

#include "OfficeView.h"

#include "OfficeDoc.h"

#define       IDC_VIEW_ID 3001

 

BOOL CXXXDlg::OnInitDialog()

{

……

CRect rect;

    GetClientRect(&rect);

 

    m_pFrame = new CFrameWnd();

    m_pFrame->Create(NULL, NULL, WS_CHILD | WS_VISIBLE, rect, this);

    ASSERT(m_pFrame);

 

     CCreateContext context;

     context.m_pCurrentFrame = NULL;

     context.m_pLastView = NULL;

     context.m_pNewDocTemplate = NULL;

     context.m_pNewViewClass = NULL;

 

     m_pDoc = new COfficeDoc;

     m_pView = new COfficeView;

     context.m_pCurrentDoc =(CDocument*) m_pDoc;

    m_pView->Create(NULL, NULL,WS_CHILD | WS_VISIBLE, rect, m_pFrame, IDC_VIEW_ID,&context);

m_pView->OnInitialUpdate();

……

}

 

此时编译,提示不能构建COfficeView,查看COfficeView类,发现构造与析构都是protected,来点狠的,直接改为public:

 

到目前,已完成了在对话框中增加文档视图结构。可以增加如下代码测试:

void COfficeView::OnDraw(CDC* pDC)

{

          CDocument* pDoc = GetDocument();

          // TODO: 在此添加绘制代码

          pDC->TextOut(100,100,_T("测试效果"),sizeof(_T("测试效果")));

}

 

运行该程序,可在对话框窗口的客户区看到“测试效果”四字。我们继续实现对word的支持。

  评论这张
 
阅读(3931)| 评论(2)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018