请问怎样用VC++在生成的WORD文档里画线?
解决方案 »
- VC运行多个程序
- Windows7下WM_SETTINGCHANGE消息无效的问题
- LINK2019 的问题
- 对话框接收消息的问题 ?
- 注册表函数ERROR_ACCESS_DENIED很烦人
- F12在调试时的问题。
- 我想用GetProcAddress获取用CreateProcess创建的进程里的一个函数地址,但是GetProcAddress要求的是进程的HMODULE/HINSTANCE,所以我要取得
- 如何将互联网用户虚拟成局域网用户
- 为什么微软不推荐使用WritePrivateProfileString?
- 如何再cview类中获取CMainFrame类的指针
- 急!!!!!!!!OCX控件释放
- MFC中怎样对列表中的数据直接点击修改
2.WORD由VC++生成?还是打开已有的?
3.画完之后,直接保存、关闭,其过程WORD不可见?
在你的程序里空白处用鼠标右键点击打开: 建立类向导->Add Class…->From a type library…->选择MSWORD9.OLB文件,然后依次填加: APPLication,_Document,Documents,Selection,Shapes五个类, 最后在调用的文件中包含#include"msword9.h"头文件即可。示例代码如下:COleVariant vtrue((short)true),
vfalse((short)false),
vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
//开始一个新的Microsoft Word 2000实例
_Application oWordApp;
if (!oWordApp.CreateDispatch("Word.Application", NULL))
{
AfxMessageBox("创建Word2000文档失败!", MB_OK | MB_SETFOREGROUND);
return;
}
//创建一个新的word文档
Documents oDocs; _Document oDoc;
oDocs = oWordApp.GetDocuments();
oDoc = oDocs.Add(vOpt, vOpt, vOpt, vOpt);
//如果是word 98,则应该带两个参数,如oDocs.Add(vOpt, vOpt)
//把文本添加到word文档
Selection oSel;
oSel = oWordApp.GetSelection();
oSel.TypeText(“输出示例字符”);
// 画线
Shapes shp; shp=oDoc.GetShapes();
shp.AddLine(100,100,200,200,vOpt);
//保存word文档
CString filename=“c:\\123.doc”;
_Document oActiveDoc;
oActiveDoc = oWordApp.GetActiveDocument();
oActiveDoc.SaveAs(COleVariant(filename),
COleVariant((short)0),
vfalse, COleVariant(""), vtrue, COleVariant(""),
vfalse, vfalse, vfalse, vfalse, vfalse);
//退出word应用程序
oWordApp.Quit(vOpt, vOpt, vOpt);
MessageBox(filename,"已生成");