1、首先,我们先来解释一些概念,方面我们去理解Qt操作excel的基本流程。
2、Qt中,QAxObject对COM对象进行封装,QAObject派生自QAxBase,QAxBase提供了一组API通过IUnknown指针直接访问COM对象。具体结构如下图。
3、我们要操作的Excel也是一个COM对象,因此,可以采用上述方式实现对Excel的操作。
4、在具体操作之前,我们先了解一下excel的层次结构,如图所示,Application对象-->Workbook对象-->Worksheet对象-->Range对象。 1个excel有一个Application对象,1个Application对象有多个workbook对象组成,这些workbook对象由workbooks对象统一管理,workbook对象下包含若干个worksheet,这些worksheet对象由worksheets对象统一管理,worksheet下面的range对象,对应这worksheet里面的表格单元了。
5、介绍完概念后我们可以做一个简单的demo来演示一下。首先,我们使用qtcreator新建一个gui或者widget项目,设置都采用默认就好。
6、然后,我们打开.pro 文件进行一下配置,在pro文件中加入CONFIG += qaxcontainer ,具体效果如图中所示。
7、然后,我们在mainwindow.h的头文件中加入#include <QAxObject>,并在成员变量中,加入一下变量。 QAxObject *pApplication; QAxObject *pWorkBooks; QAxObject *pWorkBook; QAxObject *pSheets; QAxObject *pSheet;如图
8、同时,对应的构造函数中,将他们都指向NULL。至此小结,后续部分请查看下一教程。