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

Qt读写Excel--QXlsx编译为静态库2

1、概述🥔
在使用QXlsx时由于源码文件比较多,如果直接加载进项目里面,会增加每次编译的时间;
直接将源码加载进项目工程中,会导致项目文件非常多,结构变得更加臃肿;
所以在本文中将会将QXlsx编译为静态库再使用;
注意: 如果是刚接触QXlsx建议还是直接使用源码,因为QXlsx源码中的注释信息主要是在.cpp文件中,使用源码便于通过阅读源码和注释信息学习怎么使用QXlsx。
2、准备工作🥕
本文中使用到的QXlsx版本为:1.4.3

本文中使用到的Qt编译器版本为:msvc2017-64

下载源码

下载

或者使用Git命令下载git clone git@github.com:QtExcel/QXlsx.git

3、开始编译🌽
打开QXlsx工程:进入QXlsx文件夹,双击打开QXlsx.pro工程文件

 

 

contains(QT_ARCH, i386){        # 使用32位编译器
DESTDIR = $$PWD/bin             # 程序输出路径
}else{
message("64bit")                # 使用64位编译器
DESTDIR = $$PWD/bin64
}
win32:CONFIG(release, debug|release): TARGET = QXlsx        # 生成release版本静态库名称
else:win32:CONFIG(debug, debug|release): TARGET = QXlsxd    # 生成debug版本静态库名称

 

分别选择Debug、Release,然后点击左下角的锤子

 

编译完成后,在QXlsx文件夹下就会出现一个bin64文件夹,打开文件夹就可以看见有QXlsx.libQXlsxd.lib两个文件

 

新建一个QXlsx文件夹,将header文件夹和bin64文件夹拷贝到新建的QXlsx文件夹中,然后将header重命名为include,到这里编译的QXlsx就准备完成了。

4、加载QXlsx静态库🥒

  • 新建一个Qt工程,将准备好的QXlsx文件夹拷贝到工程目录下

 

在QtCreator中鼠标在工程上右键选择添加库

 

 选择外部库

 

点击浏览,找到工程路径下的QXlsx.lib库,选择Window为debug版本添加‘d’作为后缀

 

点击下一步后就会在Pro文件中生成下列内容

 然后改为下列内容,到这一步就加载完成了。

 

5、测试QXlsx静态库🥬

  • 在工程中添加下列代码,然后分别以debug、release模式编译,如果在生成的可执行程序路径下看见Test.xlsx文件了,那就说明QXlsx静态库 编译成功了✌

  • #include "widget.h"
    #include "ui_widget.h"#include "xlsxdocument.h"           // 添加QXlsx头文件Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
    {ui->setupUi(this);QXlsx::Document xlsx;           // 创建一个excelxlsx.write("A1", "Hello Qt!");  // 在第一行第一列写入数据xlsx.saveAs("Test.xlsx");       // excel保存到./Test.xlsx
    }Widget::~Widget()
    {delete ui;
    }
    

     

相关文章:

Qt读写Excel--QXlsx编译为静态库2

1、概述🥔 在使用QXlsx时由于源码文件比较多,如果直接加载进项目里面,会增加每次编译的时间; 直接将源码加载进项目工程中,会导致项目文件非常多,结构变得更加臃肿; 所以在本文中将会将QXlsx编译…...

win11电脑查找已连接打印机ip的方法

此方法适用于驱动打印机,windows 11操作系统。 方法一:直接查看法 首先大家可以看看自己的打印机有没有lcd屏幕。有些直接在屏幕显示ip;另一种进入菜单,然后可以在里面的选项中显示“ip地址”。 方法二:设置中查看 …...

测试开发探索:“WeTalk“网页聊天室的测试流程与自动化

目录 引言: 测试开发目标: "WeTalk"项目背景 关于登录测试用例的设计 测试开发策略与流程 集成测试:Selenium JUnit 接口测试:Postman 测试用例的设计与实现 自动化测试演示: 用例一:登…...

图片增强组件实现

设计并实现了一个图片增强的组件,具体功能如下: 图片数据增强,包括且不限于:图片旋转、比例增强、高斯噪声、饱和度变换等若图片包含对应标注boundingbox,也支持对应变换,保证圈选内容的不变性实现多种方式…...

go.sum are different when using go mod vendor/download

本地Golang配置 今天本地编译一个项目,遇到以下错误 PS D:\Code\Golang\jiankunking\k8s-ext> go mod tidy go: downloading github.com/huaweicloud/huaweicloud-sdk-go-obs v3.23.4incompatible verifying github.com/gin-gonic/ginv1.7.3: checksum mismat…...

Docker技术入门教程

Docker技术入门教程 一、docker概念 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后&a…...

Vue2-组件,组件的使用及注意点,组件嵌套,VueComponent构造函数,单文件组件

🥔:功不唐捐 更多Vue知识请点击——Vue.js VUE-Day5 组件与使用组件的三大步1、定义组件(创建组件)2、注册组件①局部注册②全局注册 3、使用组件小案例: 使用组件的一些注意点1.关于组件名2.关于组件标签3.一个简写方式 组件的嵌套VueCompon…...

IntelliJ IDEA Bookmark使用

1 增加 右键行号栏 2 查看 从favorite这里查看 参考IntelliJ IDEA 小技巧:Bookmark(书签)的使用_bookmark idea 使用_大唐冠军侯的博客-CSDN博客...

kriging-contour前端克里金插值

先看效果: 本项目在kriging-contour插件基础上进行了封装,增加了自定义区域插值,gitbub地址。...

第八章 CUDA内存应用与性能优化篇(中篇)

cuda教程目录 第一章 指针篇 第二章 CUDA原理篇 第三章 CUDA编译器环境配置篇 第四章 kernel函数基础篇 第五章 kernel索引(index)篇 第六章 kenel矩阵计算实战篇 第七章 kenel实战强化篇 第八章 CUDA内存应用与性能优化篇 第九章 CUDA原子(atomic)实战篇 第十章 CUDA流(strea…...

适用于物联网 (IoT)的远距离、低功耗、低速率WiFi—Wi-Fi HaLow

1. Wi-Fi 简介 Wi-Fi(Wireless Fidelity)是目前较为常见的无线通信方式,承载着一半以上的互联网流量。Wi-Fi是一个总称,涵盖了802.11通信协议系列,由Wi-Fi联盟持有并推动其发展。802.11通信协议发展至今已逾二十年&am…...

【解读Spikingjelly】使用单层全连接SNN识别MNIST

原文档:使用单层全连接SNN识别MNIST — spikingjelly alpha 文档 代码地址:完整的代码位于activation_based.examples.lif_fc_mnist.py GitHub - fangwei123456/spikingjelly: SpikingJelly is an open-source deep learning framework for Spiking Neur…...

穿越数字奇境:探寻元宇宙中的科技奇迹

随着科技的迅速发展,元宇宙正逐渐成为一个备受关注的话题,它不仅是虚拟现实的延伸,更是将现实世界与数字世界融合的未来典范。在这个神秘而充满活力的数字奇境中,涉及了众多领域和技术,为我们呈现出了一个无限的创新和…...

2024」预备研究生mem-阴影图形

一、阴影图形 二、课后题...

【设计模式】责任链模式

顾名思义,责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型的设计模式属于行为型模式。 在这种模式中,通常每个接收者…...

解密人工智能:线性回归 | 逻辑回归 | SVM

文章目录 1、机器学习算法简介1.1 机器学习算法包含的两个步骤1.2 机器学习算法的分类 2、线性回归算法2.1 线性回归的假设是什么?2.2 如何确定线性回归模型的拟合优度?2.3 如何处理线性回归中的异常值? 3、逻辑回归算法3.1 什么是逻辑函数?…...

【FFMPEG应用篇】使用FFmpeg的常见问题

拼接视频的问题 在使用ffmpeg进行视频拼接时,可能会遇到一些常见问题。以下是这些问题及其解决方法: 1. 视频格式不兼容:如果要拼接的视频格式不同,ffmpeg可能会报错。解决方法是使用ffmpeg进行格式转换,将所有视频转…...

(vue)获取对象的键遍历,同时循环el-tab页展示key及内容

(vue)获取对象的键遍历,同时循环el-tab页展示key及内容 效果: 数据结构: "statusData": {"订购广度": [ {"id": 11, "ztName": "广", …...

【严重】Smartbi未授权设置Token回调地址获取管理员权限

漏洞描述 Smartbi是一款商业智能应用,提供了数据集成、分析、可视化等功能,帮助用户理解和使用他们的数据进行决策。 在 Smartbi 受影响版本中存在Token回调地址漏洞,未授权的攻击者可以通过向目标系统发送POST请求/smartbix/api/monitor/s…...

北京鸟巢门票多少,里面有什么好玩的

北京鸟巢门票多少,里面有什么好玩的 北京鸟巢的门票是100元,里面有很多运动设施,“鸟巢”结构设计奇特新颖,而这次搭建它的钢结构的Q460也有很多独到之处:Q460是一种低合金高强度钢,它在受力强度达到460兆帕…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

网络编程(UDP编程)

思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)

本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

【C++】纯虚函数类外可以写实现吗?

1. 答案 先说答案&#xff0c;可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...