1. pro 文件中要加入

CONFIG += qaxcontainer

2. main.cpp

  1. #include <QApplication>
  2. #include <QAxWidget>
  3. #include <QAxObject>
  4. int main(int argc, char* argv[])
  5. {
  6. QApplication app(argc, argv);
  7. QAxWidget *word=new QAxWidget("Word.Application", 0, Qt::MSWindowsOwnDC);
  8. word->setProperty("Visible", true);
  9. // 获取所有的工作文档
  10. QAxObject * documents = word->querySubObject("Documents");
  11. // 以文件template.doc为模版新建一个文档
  12. documents->dynamicCall("Add(QString)",QString::fromLocal8Bit("D:/doc/template.doc"));
  13. // 获取当前激活的文档
  14. QAxObject *document=word->querySubObject("ActiveDocument");
  15. // 获取文档中名字为text的标签
  16. QAxObject*bookmark_text=document->querySubObject("Bookmarks(QVariant)","text");
  17. // 选中标签,将字符InsertText插入到标签位置
  18. if(!bookmark_text->isNull()){
  19. bookmark_text->dynamicCall("Select(void)");
  20. bookmark_text->querySubObject("Range")->setProperty("Text","InsertText");
  21. }
  22. // 将文件另存为docbyqt.doc,关闭工作文档,退出应用程序
  23. document->dynamicCall("SaveAs (const QString&)", QString("D:/doc/docbyqt.doc"));
  24. document->dynamicCall("Close (boolean)", false);
  25. word->dynamicCall("Quit()");
  26. return app.exec();
  27. }

http://blog.csdn.net/zbc415766331/article/details/36396159

网上关于qt操作word的资料实在是太少了,搞了半天终于能在word 表格中插入标签的地方插入图片了。

1.在pro中加入

CONFIG   += qaxcontainer

2.main.cpp

  1. #include <QApplication>
  2. #include <QAxWidget>
  3. #include <QAxObject>
  4. int main(int argc, char* argv[])
  5. {
  6. QApplication app(argc, argv);
  7. QAxWidget *word=new QAxWidget("Word.Application", 0, Qt::MSWindowsOwnDC);
  8. word->setProperty("Visible", true);
  9. // 获取所有的工作文档
  10. QAxObject * documents = word->querySubObject("Documents");
  11. // 以文件template.doc为模版新建一个文档
  12. documents->dynamicCall("Add(QString)",QString::fromLocal8Bit("D:/doc/template.doc"));
  13. // 获取当前激活的文档
  14. QAxObject *document=word->querySubObject("ActiveDocument");
  15. // 获取文档中名字为text的标签
  16. QAxObject*bookmark_text=document->querySubObject("Bookmarks(QVariant)","text");
  17. // 选中标签,将字符InsertText插入到标签位置
  18. if(!bookmark_text->isNull()){
  19. bookmark_text->dynamicCall("Select(void)");
  20. bookmark_text->querySubObject("Range")->setProperty("Text","InsertText");
  21. }
  22. // 获取文档中名字为pic的标签
  23. QAxObject*bookmark_pic=document->querySubObject("Bookmarks(QVariant)","pic");
  24. // 选中标签,将图片插入到标签位置
  25. if(!bookmark_pic->isNull())
  26. {
  27. bookmark_pic->dynamicCall("Select(void)");
  28. QAxObject *range;
  29. range = bookmark_pic->querySubObject("Range");
  30. QVariant tmp = range->asVariant();
  31. QList<QVariant>qList;
  32. qList<<QVariant("D:/1.png");
  33. qList<<QVariant(false);
  34. qList<<QVariant(true);
  35. qList<<tmp;
  36. QAxObject *Inlineshapes = document->querySubObject("InlineShapes");
  37. Inlineshapes->dynamicCall("AddPicture(const QString&, QVariant, QVariant ,QVariant)",qList);
  38. }
  39. // 将文件另存为docbyqt.doc,关闭工作文档,退出应用程序
  40. document->dynamicCall("SaveAs (const QString&)", QString("D:/doc/docbyqt.doc"));
  41. document->dynamicCall("Close (boolean)", false);
  42. word->dynamicCall("Quit()");
  43. return app.exec();
  44. }

addpicture 微软官方注解:http://msdn.microsoft.com/en-us/library/office/aa171535(v=office.11).aspx

http://blog.csdn.net/zbc415766331/article/details/36659993

HRESULT r;
r = CoInitialize(0);
// r =CoInitializeEx(0, COINIT_MULTITHREADED);
// m_word = new QAxWidget("Word.Application", widget, Qt::MSWindowsOwnDC );
m_word = new QAxObject("Word.Application" );
if( m_word == NULL ) return true;
//m_word->setProperty("Visible", false); //设置为隐藏
QAxObject * documents = m_word->querySubObject("Documents"); //获取所有工作的文档

http://www.qtcn.org/bbs/read-htm-tid-60802.html

最新文章

  1. java学习笔记之线程1
  2. java Thread和Runnable区别
  3. Cheatsheet: 2015 08.01 ~ 08.31
  4. C 语言中 free() 函数简单分析
  5. CRM 2016 自动保存 Save event arguments
  6. 酒鬼-DP
  7. 《Cocos2d-x实战 JS卷 Cocos2d-JS开发》上线了
  8. Android 布局 中实现适应屏幕大小及组件滚动
  9. 简单3d RPG游戏 之 003 怪物AI
  10. Hibernate中的一对多关系详解(2)
  11. XE5 Android 开发数据访问server端
  12. Rotation Lock Puzzle
  13. ECToch随笔
  14. sqlalchemy常用
  15. C# 之 下载EXCEL文件,自动用迅雷下载aspx
  16. laravel框架基础(1)---入门与介绍
  17. C#操作IIS程序池及站点的创建配置(转)
  18. [leetcode]Rotate List @ Python
  19. java考试感受
  20. svn重新安装后报You need to upgrade the working copy first错误

热门文章

  1. BZOJ 1537: [POI2005]Aut- The Bus(dp + BIT)
  2. [置顶] java的foreach循环
  3. NSString和NSDate的转换
  4. 高级UIKit-09(TCPSocket发送文件、上传和下载)
  5. android在view.requestFocus(0)返回false的解决办法
  6. javascript笔记整理(概述,变量,数据类型)
  7. lsh341999的资源
  8. HDU 1251 统计难题 (字符串-Trie树)
  9. IntelliJ Idea 经常使用快捷键列表
  10. HDU ACM 1098 Ignatius&amp;#39;s puzzle