2.QT中操作word文档
Qt/Windows桌面版提供了ActiveQt框架,用以为Qt和ActiveX提供完美结合。ActiveQt由两个模块组成:
A QAxContainer模块允许我们使用COM对象并且可以在Qt应用程序中嵌入QActive控件。
B QAxServer模块允许我们导出使用Qt编写的自定义的COM对象和Active控件。
C 在这里,我们使用了QAxContainer模块,所以在.pro中,需要使用下面这一项来链接这个QAxContainer模块:CONFIG+=qaxcontainer(注意:在QT5.3中使用的是:QT
+= widgets gui axcontainer)。
D
在头文件中包含QAxWidget和QAxObject。
操作步骤:
A 新建一个word文档,内容如下:
B 选中项目编码下的一个单元格,点击上面菜单栏中的
”插入à书签”,添加如下书签:新建项目(ActiveQt)进行测试
ActiveQt.pro |
SOURCES main.cpp QT |
main.cpp |
#include <QApplication> #include <QAxObject> #include <QAxWidget> /** * Qt/Windows桌面版提供了ActiveQt框架,用以为Qt和ActiveX提供完美结合。ActiveQt由两个模块组成: * QAxContainer模块允许我们使用COM对象并且可以在Qt应用程序中嵌入QActive控件。 * QAxServer模块允许我们导出使用Qt编写的自定义的COM对象和Active控件。 * 在这里,我们使用了QAxContainer模块,所以在.pro中,需要使用下面这一项来链接这个QAxContainer模块: * CONFIG+=qaxcontainer(注意:在QT5.3中使用的是:QT += widgets gui axcontainer)。 * 在头文件中包含QAxWidget和QAxObject。 * 操作word的步骤: */ int main(int argc,char *argv[]) { QApplication app(argc,argv); //新建一个word应用程序 QAxWidget *word = new QAxWidget("Word.Application",0,Qt::MSWindowsOwnDC); //并设置为可见 word->setProperty("Visible",true); //获取所有的工作文档 QAxObject *documents = word->querySubObject("Documents"); //以template.dot为模板新建一个文档 documents->dynamicCall("Add(QString)",QString::fromLocal8Bit("E:/template.dot")); //获取当前激活的文档 QAxObject *document = word->querySubObject("ActiveDocument"); //获取文档中名字为code的标签 QAxObject *bookmark_code = document->querySubObject("Bookmarks(QVariant)","code"); //选中标签,将字符textg插入到标签位置 if(!bookmark_code->isNull()) { bookmark_code->dynamicCall("Select(void)"); bookmark_code->querySubObject("Range")->setProperty("Text","textg"); } //将文件保存为template.docx,同样可以生成doc文档 document->dynamicCall("SaveAs (const QString&)",QString("E:/template.docx")); document->dynamicCall("Close (boolean)",false); word->dynamicCall("Quit()"); return app.exec(); } |
E |
2.QT中操作word文档的更多相关文章
- c#中操作word文档-四、对象模型
转自:http://blog.csdn.net/ruby97/article/details/7406806 Word对象模型 (.Net Perspective) 本文主要针对在Visual St ...
- c#中操作word文档-一、模板方式写入
转载自:http://blog.csdn.net/fujie724/article/details/5443322 适合模板写入 今天正好有人问我,怎么生成一个报表式的Word文档. 就是文字的样式和 ...
- c#中操作word文档-三、MSDN文档
这是关于word读写的MSDN内容,基本所有的方法都可以在这上面找到 https://msdn.microsoft.com/zh-cn/library/office/ff837519.aspx
- C# 中使用Word文档对图像进行操作
C# 中使用Word文档对图像进行操作 Download Files: ImageOperationsInWord.zip 简介 在这篇文章中我们可以学到在C#程序中使用一个Word文档对图像的各种操 ...
- Java文件操作系列[3]——使用jacob操作word文档
Java对word文档的操作需要通过第三方组件实现,例如jacob.iText.POI和java2word等.jacob组件的功能最强大,可以操作word,Excel等格式的文件.该组件调用的的是操作 ...
- 如何在程序中给word文档加上标和下标
如何在程序中给word文档加上标和下标 上标或下标是一个小于普通行格式的数字,图形,标志或者指示通常它的设置与行相比偏上或偏下.下标通常显示于或者低于基准线,而上标则高于.上标和下标通常被用于表达公式 ...
- iText操作word文档总结
操作word文档的工具有很多,除了iText之外还有POI,但是POI擅长的功能是操作excel,虽然也可以操作word,但是能力有限,而且还有很多的bug,技术并不成熟,下面就重点介绍一种操作wor ...
- C#操作Word文档(加密、解密、对应书签插入分页符)
原文:C#操作Word文档(加密.解密.对应书签插入分页符) 最近做一个项目,客户要求对已经生成好的RTF文件中的内容进行分页显示,由于之前对这方面没有什么了解,后来在网上也找了相关的资料,并结合自己 ...
- 在Delphi中处理word文档与数据库的互联 1
在Delphi中处理word文档与数据库的互联 ---- 目前,Delphi被越来越多的人选中作为MIS系统开发中的前台工具.在以Delphi为前台,一些大型数据库为后台的MIS系统中,图形的处理不可 ...
随机推荐
- ●BZOJ 4559 [JLoi2016]成绩比较
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=4559 题解: 计数dp,拉格朗日插值法.真的是神题啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 ...
- hdu 5600 BestCoder Round #67 (div.2)
N bulbs Accepts: 275 Submissions: 1237 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 655 ...
- python 字典实现简单购物车
# -*- coding: utf-8 -*-#总金额asset_all=0i1=input('请输入总资产:')asset_all=int(i1)#商品列表goods=[ {'name':'电脑', ...
- EffectiveTensorflow:Tensorflow 教程和最佳实践
Tensorflow和其他数字计算库(如numpy)之间最明显的区别在于Tensorflow中的操作是符号. 这是一个强大的概念,允许Tensorflow进行所有类型的事情(例如自动区分),这些命令式 ...
- java集合之LinkedList源码解读
源自:jdk1.8.0_121 LinkedList继承自AbstractSequentialList,实现了List.Deque.Cloneable.Serializable. LinkedList ...
- Linux/Centos笔记目录
Linux介绍 Linux入门--个人感想 Google怎么用linux 初入Linux Windows XP硬盘安装Ubuntu 12.04双系统图文详解 实例讲解虚拟机3种网络模式(桥接. ...
- openlayers3设置zoom不变
设置maxZoom和minZoom一致,并去掉resolutions
- 优化Webpack打包速度
1. Webpack 可以配置 externals 来将依赖的库指向全局变量,从而不再打包这个库,比如对于这样一个文件: import React from 'react'; console.lo ...
- The specified JRE installation does not exist异常的原因和解决办法
今天,回首为了学习新框架,于是将JDK的版本从1.7开发标配版换成了1.8,一切前期很顺利,完成了新框架的测试和体验,但在运行原有项目的时候问题出现了,爆出了The specified JRE ins ...
- Node.js Smalloc
稳定性: 1 - 试验 类: smalloc 由简单内存分配器(处理扩展原始内存的分配)支持的缓存.Smalloc 有以下函数: smalloc.alloc(length[, receiver][, ...