当前位置: 首页 > news >正文

QtXlsx库编译使用

文章目录

  • 一、前言
  • 二、Windows编译使用
    • 2.1 用法①:QtXlsx作为Qt的附加模块
      • 2.1.1 检验是否安装Perl
      • 2.1.2 下载并解压QtXlsx源码
      • 2.1.3 MinGW 64-bit安装模块
      • 2.1.4 测试
    • 2.2 用法②:直接使用源码
  • 三、Linus编译使用
    • 3.1、安装Qt5开发软件包:qtbase5-private-dev
    • 3.2 编译安装[同Windows操作]
    • 3.3 测试

一、前言

之前在Windows上进行Qt开发,需要编辑excel文件时,使用axcontainer模块即可。

但是axcontainer模块是Qt用来调用com组件的容器,而com的概念只在Windows中才有,因此在Linux无法使用。

所以使用axcontainer模块会让程序失去跨平台性,我们可以使用第三方库QtXlsx:QtXlsx源码下载

QtXlsx是可以读取和写入Excel文件的库。 它不需要Microsoft Excel,并且可以在Qt5支持的任何平台中使用。 该库可用于:

  • 从头开始生成新的.xlsx文件
  • 从现有的.xlsx文件提取数据
  • 编辑现有的.xlsx文件

注意:对于Linux用户,如果Qt是通过“ apt-get”之类的软件包管理器工具安装的,请确保已安装Qt5开发软件包qtbase5-private-dev


二、Windows编译使用

2.1 用法①:QtXlsx作为Qt的附加模块

2.1.1 检验是否安装Perl

如果已经安装则可进行下一步骤,否则请先安装perl

在这里插入图片描述


2.1.2 下载并解压QtXlsx源码

在这里插入图片描述


2.1.3 MinGW 64-bit安装模块

打开MinGW 64-bit编译器:

在这里插入图片描述
切换到QtXlsx源码路径:

在这里插入图片描述
进行如下操作:

#步骤1
qmake src.pro#步骤2
make#步骤3
make install

在这里插入图片描述

安装完成:

在这里插入图片描述


2.1.4 测试

新建Qt工程:XLSX_Test

在这里插入图片描述
打开QtXlsx源码中的examples中的Hello/main.cpp,将代码负责过来:

在这里插入图片描述
打开SLSX_Test.pro添加模块:

在这里插入图片描述

运行结果:

在这里插入图片描述
在这里插入图片描述


2.2 用法②:直接使用源码

源码中包含一个qtxlsx.pri文件,许您将组件集成到使用 qmake 进行生成步骤的应用程序中:

在这里插入图片描述
新建Qt工程:XLSX_Test

在这里插入图片描述
工程目录新建文件夹qtxlsx:

在这里插入图片描述
在这里插入图片描述
复制QtXlsx源码下的src文件夹到刚刚创建的文件夹qtxlsx中:

在这里插入图片描述
在工程中引入xlsx源代码:

# 使用qtxlsx源代码
include(qtxlsx/src/xlsx/qtxlsx.pri)

在这里插入图片描述
打开QtXlsx源码中的examples中的Hello/main.cpp,将代码负责过来:

在这里插入图片描述
运行结果:

在这里插入图片描述
在这里插入图片描述


三、Linus编译使用

3.1、安装Qt5开发软件包:qtbase5-private-dev

sudo apt-get install qtbase5-private-dev

在这里插入图片描述


3.2 编译安装[同Windows操作]

切换到源码/src路径下,依次执行如下指令:

#步骤1
qmake src.pro#步骤2
make#步骤3
make install

在这里插入图片描述
在这里插入图片描述
编译安装完成:

在这里插入图片描述


3.3 测试

新建Qt工程:QtXlsx_Test

在这里插入图片描述


建议直接使用源码,操作同Windows内操作,这样可以不依赖Linux环境,可移植性更强!!!

http://www.lryc.cn/news/354574.html

相关文章:

  • LeetCode题练习与总结:二叉树的层序遍历Ⅱ--107
  • WIFI国家码设置的影响
  • 2024年软考高项-信息系统管理师介绍-备考-考试内容-通过攻略
  • Python知识点复习
  • GeoScene产品学习视频收集
  • 51单片机的最小系统详解
  • 路径规划搜路算法有哪些?
  • Hadoop学习之hdfs的操作
  • DBAPI怎么进行数据格式转换
  • Oracle JSON 函数详解与实战
  • C#面:请解释转发与跳转的区别
  • Java+IDEA+SpringBoot药物不良反应ADR智能监测系统源码 ADR智能化监测系统源码
  • linux系统模拟资源消耗的简单手段
  • 吉林大学软件工程简答题整理
  • 爬山算法介绍
  • 在linux中配置关于GFS创建各种卷以及卷组--配置实验
  • 安泰电子:使用高压放大器时有哪些需要注意的呢
  • 为什么大部分新手做抖音小店赚不到钱?
  • 跳跃游戏(2)
  • 11.Redis之zset类型
  • Python怎样将PDF拆分成多个文件
  • C语言-----前置++和后置++的不同
  • 685. 冗余连接 II
  • 自养号测评是什么?亚马逊、沃尔玛、Target卖家如何建立自己的护城河?
  • 计算机毕业设计 | SpringBoot招投标 任务发布网站(附源码)
  • element el-table表格表头某一列表头文字或者背景修改颜色
  • 移动云:连接未来的智慧之旅
  • 如何确保大模型 RAG 生成的信息是基于可靠的数据源?
  • Laravel(Lumen8) + Supervisor 实现多进程redis消息队列
  • 深度学习复盘与小实现