zoukankan      html  css  js  c++  java
  • VC操作Word之(三)

    上一篇说了如何制作一个简单的表格,在实际应用中会发现表格的种类很多其中对于单元格要求合并的情形很多,这样出来的表格比较专业让客户看起来也很是舒服,不喔喔了看看下面的代码就全明白了。
    void CWordTestDlg::TestWord3()
    {
    _Application app;
    COleVariant vTrue((short)TRUE),	vFalse((short)FALSE);
    app.CreateDispatch(_T("Word.Application"));
    app.SetVisible(FALSE);
    //Create New Doc
    Documents docs=app.GetDocuments();
    CComVariant tpl(_T("")),Visble,DocType(0),NewTemplate(false);
    docs.Add(&tpl,&NewTemplate,&DocType,&Visble);
    //Add Content:Text
    Selection sel=app.GetSelection();
    sel.TypeText(_T("/t/t/t/t/t/t/t情况汇总/r/n"));
    sel.TypeText(_T("/t/t/t/t/t/t/t/t----------*******跨国公司/r/n"));
    COleDateTime dt=COleDateTime::GetCurrentTime();
    CString strDT=dt.Format("%Y-%m-%d");
    CString str("/t/t/t/t/t/t/t/t/t/t/t/t/t/t/t/t");
    str+=strDT;
    str+="/r/n";
    sel.TypeText(str);
    //Add Table
    _Document saveDoc=app.GetActiveDocument();
    Tables tables=saveDoc.GetTables();
    CComVariant defaultBehavior(1),AutoFitBehavior(1);
    tables.Add(sel.GetRange(),7,11,&defaultBehavior,&AutoFitBehavior);
    Table table=tables.Item(1);
    sel.TypeText(_T("Test1"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test2"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test3"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test4"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test5"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test6"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test7"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test8"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test9"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test10"));
    sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));
    sel.TypeText(_T("Test11"));  
    for(int i=2;i<7;i+=2)
    {
      Cell c1=table.Cell(i,1);
    	Cell c2=table.Cell(i+1,1);
    	c1.Merge(c2);
    	c1.ReleaseDispatch();
    	c2.ReleaseDispatch();
    }
    app.SetVisible(TRUE);
    table.ReleaseDispatch();
    tables.ReleaseDispatch();
    sel.ReleaseDispatch();
    docs.ReleaseDispatch();
    saveDoc.ReleaseDispatch();
    app.ReleaseDispatch();
    app.SetVisible(TRUE);
    }
     
  • 相关阅读:
    使用 GitHub, Jekyll 打造自己的免费独立博客
    如何解决数据科学计数法在数据库中的显示
    RDF
    C# 在 4.0 以后一共有3种创建线程的方式
    C#多线程
    1、框架概述
    3、IDEA 中使用 Maven
    2、Maven 核心概念
    1、Maven 概述
    JDK动态代理
  • 原文地址:https://www.cnblogs.com/tyjsjl/p/2156094.html
Copyright © 2011-2022 走看看