您好,欢迎来到Office教程网
您的位置: 主页 > word教程 > word学习 >

用VC写word文件方法(3)

时间:2012-04-03 来源:office.sc115.com阅读:
  • {           
  • CView:nInitialUpdate();           
  • EmbedAutomateWord();   //将Word嵌入           
  • m_pSelection   =   NULL;           
  • }    
  • (7)为了使嵌入的工作区占满整个客户区可以通过修改OnDraw函数来实现:
     

    1. void   CEmbed_WordView:nDraw(CDC*   pDC)           
    2. {           
    3. CEmbed_WordDoc*   pDoc   =   GetDocument();           
    4. ASSERT_VALID(pDoc);           
    5. if   (m_pSelection   ==   NULL)           
    6. {           
    7. POSITION   pos   =   pDoc->GetStartPosition();           
    8. m_pSelection   =   (CEmbed_WordCntrItem*)pDoc->GetNextClientItem(pos);           
    9. }           
    10. if   (m_pSelection   !=   NULL)           
    11. {           
    12. CRect   rect;           
    13. GetClientRect(&m_pSelection->rect);           
    14. m_pSelection->OnGetItemPosition(rect);           
    15. m_pSelection->Draw(pDC,rect);           
    16. }           
    17. }   

    二:
    在VC中调用WORD(显示,修改,存盘,运行宏)
    (1)使用AppWizard创建一个新的MFC   AppWizard(EXE)工程,命名为"office"
    (2)选择单文档视图(SDI)结构,在第3步中需要选中Container,以提供容器支持,并且选中active   document   container   其它都为默认
    (3)在View菜单中,选ClassWizard,选Automation选项卡,选Add   Class,选择From   a   TypeLibrary,   在Office目录中选中Microsoft   Word   97/2000   类型库Word8.olb或Word9.olb,选中application,document,_document。单击ok
    (4)给COfficeCntrItem添加一Public方法。LPDISPATCH   GetIDispatch()

    其源码如下:
     

    1.     ASSERT_VALID(this);         ASSERT(m_lpObject   !=   NULL);           
    2. LPUNKNOWN   lpUnk   =   m_lpObject;           Run();           
    3. LPOLELINK   lpOleLink   =   NULL;         if   (m_lpObject->QueryInterface(IID_IOleLink,   (LPVOID   FAR*)&lpOleLink)   ==   NOERROR)           
    4. {               ASSERT(lpOleLink   !=   NULL);           
    5.     lpUnk   =   NULL;                       if   (lpOleLink->GetBoundSource(&lpUnk)   !=   NOERROR)             
    6.     {                   TRACE0("Warning:   Link   is   not   connected!\n");             

    office教程 - office2007免费版下载 - word教程 - 网站地图