Qt操作excel的三方库Qtxlsx在Windows下使用注意事项

2023-11-05

Qt操作excel的三方库Qtxlsx在Windows下使用注意事项

1. Qt Xlsx简介

https://qtxlsx.debao.me/

Qt的XLSX模块提供了一组类来读写Excel文件。它不需要 Microsoft Excel,可以在 Qt5 支持的任何平台上使用。该库可用于

GitHub:https://github.com/dbzhang800/QtXlsxWriter

下面将说明如何编译该模块并添加到Qt5中,如何安装适用于Windows下的mingw版本Qt可以参考这里:https://blog.csdn.net/weixin_39510813/article/details/79680772

我目前使用的Qt5.9.1。

2. 编译及添加模块

需要编译生成一些文件将之添加到Qt5模块中,这样才可以以模块方式加入到项目中。

2.1 下载及编译

https://github.com/dbzhang800/QtXlsxWriter

注意点:估计QtXlsx是由Perl语言开发的然后封装成Qt库的,因此需要先安装Perl,这给了我们提示,我们其实可以将python操作excel或者一些其它操作进行Qt模块封装。

Perl的下载安装这里就不多说了,和安装python、node.js等类似,下载软件安装即可,官网下载地址:https://www.perl.org/get.html

目前最新的0.3版本直接下载master分支后打开对应根目录的.pro即可,然后配置默认编译后进行编译:

在这里插入图片描述

双击后Qt creator可以直接配置项目,进行默认配置:

在这里插入图片描述

等待片刻后直接编译(不要点运行和调试),然后等待编译完成即可:

在这里插入图片描述

2.2 拷贝相关文件集成到Qt5模块中

之后我们将头文件、动态库及静态库文件、模块相关文件等拷贝到已安装的Qt5模块文件夹中即可(我们在设计相关项目时也应当参考这种方式,这样后续升级添加功能只需要这样模块化的加入即可),目前编译的debug版本,当发布时编译release版本加入到打包目录即可:

在这里插入图片描述

以上四部分内容分别拷贝:

  • bin下的dll拷贝到“Qt安装目录/Qt版本xxx/编译器版本/bin/”,比如:D:\Qt5.9.1\5.9.1\mingw53_32\bin
  • include下的头文件拷贝到“Qt安装目录/Qt版本xxx/编译器版本/include/”,带上文件夹,比如QtXlsx整个头文件带文件加拷贝到:D:\Qt5.9.1\5.9.1\mingw53_32\include
  • lib目录类似,将.dll和.a的动态和静态库都拷贝过来,比如到:D:\Qt5.9.1\5.9.1\mingw53_32\lib
  • mkspecs下的文件应该主要是为了编译时的make寻找,将mkspecs下的文件拷贝到Qt类似目录即可,比如:D:\Qt5.9.1\5.9.1\mingw53_32\mkspecs\modules(我们只发现了modules文件夹所以先只拷贝这个)

2.3 调用QtXslx

调用的话根据不同的IDE进行配置即可,比如Qt creator的qmake方式则在项目pro中添加xlsx,比如QT += core gui xlsx

cmake方式则按照:https://blog.csdn.net/weixin_39510813/article/details/120570670

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt操作excel的三方库Qtxlsx在Windows下使用注意事项 的相关文章

  • 在 Windows 7 上的 Sourcetree 中比较 Word docx 文件

    我一直在尝试获取在 Windows 7 上的 Sourcetree 中工作的 Word docx 文件的文本差异 我已按照此处的说明进行操作将 Microsoft Word 与 git 结合使用 http blog martinfenner
  • Qt - 设置不可编辑的QComboBox的显示文本

    我想将 QComboBox 的文本设置为某些自定义文本 不在 QComboBox 的列表中 而不将此文本添加为 QComboBox 的项目 此行为可以在可编辑的 QComboBox 上实现QComboBox setEditText cons
  • 如何创建向后兼容 Windows 7 的缩放和尺寸更改每显示器 DPI 感知应用程序?

    我是 WPF 和 DPI 感知 API 的新手 正在编写一个在 Windows 7 8 1 和 10 中运行的应用程序 我使用具有不同每个显示器 DPI 设置的多个显示器 并且有兴趣将我的应用程序制作为跨桌面配置尽可能兼容 我已经知道可以将
  • 将html表格保存到excel中[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我必须编写一个程序 定期读取网页并将
  • 如何设置任务在使用 vbs 登录时以当前用户身份运行而无需管理员权限?

    从命令行 我可以创建一个在登录时运行的计划任务 无需管理员权限或用户输入密码来设置任务 但是我必须使用 xml 文件来执行此操作 下面是一个示例 xml 其中 Domain User 部分必须在运行时替换为当前用户的域和名称
  • git 认为文件已更改

    我在一台机器上对一个项目做了一些工作 然后推送到 github 在另一台机器上克隆并做了一些工作 然后推送 然后我回到第一台机器并做了一个pull 现在 第一台机器认为项目中最初的所有文件都已更改 我试过了 git checkout f a
  • 在二维范围内查找匹配的公式

    我需要一个公式来查找二维范围内的值并返回匹配单元格的坐标或单元格地址 例如 R A B C 1 John Matt Pete 2 Sara Bret Chad 3 Lila Maya Cami 我想搜索范围A1 C3 for Chad并返回
  • Windows批处理文件:将结构转换为单行字符串

    我需要将这个艰巨的任务作为批处理文件来完成 这对于 C 来说不是最困难的 但在 DOS 中是一个地狱 至少对我来说 我需要将结构转换为单个 var 字符串 才能在我的程序中再次将它们转换为该结构 别担心回归 一切都已经完成了 该结构的大小会
  • 可以读取目标文件吗?

    我很好奇 obj文件 我几乎不知道它们是什么 或者它们包含什么 所以我用 Vim 文本编辑器打开它们 我在里面发现了一种类似外星人的语言 有什么办法可以理解它们代表什么以及它们的内容是什么 另外 它们的用途是什么 Thanks Sure 但
  • Excel工作簿关闭后反复打开

    我使用了 Application ontime 方法来调度一些宏 关闭工作簿后 它会一次又一次地打开 为了解决这个问题 我在工作簿上设置了另一个事件 BeforeClosed 现在它显示运行时错误 1004 Object Applicati
  • 所以,我有 6 个“主”文件,然后分为 40 个单独的文件

    我将简要描述我想要的内容 我有 6 个 主 文件 每个文件包含 40 个工作表 如下所示 AG 工作簿有 HR Gp 1 到 HR Gp 40 ER 工作簿有 FB Gp 1 到 Gp 40 等 所有工作表都已 平坦 我已经成功创建了一个适
  • Java Microsoft Excel API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在 Windows 命令行中使用参数运行 Python 脚本

    这是我的蟒蛇hello py script def hello a b print hello and that s your sum sum a b print sum import sys if name main hello sys
  • 如何使我的表单标题栏遵循 Windows 深色主题?

    我已经下载了Windows 10更新包括黑暗主题 文件资源管理器等都是深色主题 但是当我创建自己的 C 表单应用程序时 标题栏是亮白色的 如何使我自己的桌面应用程序遵循我在 Windows 中设置的深色主题 你需要调用DwmSetWindo
  • 如果总和为 0,则查找并删除带标题的最后一列

    我想创建一个宏 查找带有标题的最后一列 并仅当该列的总和等于零时才将其删除 到目前为止 这是我尝试过的 Dim LastCol As Long Dim i As Long With ThisWorkbook Sheets Sheet1 Fo
  • Excel 工作表名称的有效字符

    在 Java 中 我们使用以下包以编程方式创建 Excel 文档 org apache poi hssf 如果您尝试设置工作表的名称 不是文件 而是内部 Excel 工作表 在以下情况下您将收到错误消息 名称超过 31 个字符 该名称包含以
  • 安装J语言的JQt IDE,出现错误

    我一直按照这里的说明进行操作 http code jsoftware com wiki System Installation Linux http code jsoftware com wiki System Installation L
  • 代码 GetAsyncKeyState(VK_SHIFT) & 0x8000 中的这些数字是什么?它们是必不可少的吗?

    我试图在按下按键的简单动作中找到这些数字及其含义的任何逻辑解释 GetAsyncKeyState VK SHIFT 0x8000 可以使用哪些其他值来代替0x8000它们与按键有什么关系 GetAsyncKeyState 根据文档返回 如果
  • 是否可以在 Qt Creator 中将 Qt 样式表与升级的小部件一起使用?

    我正在尝试使用 Qt 样式表对标准小部件进行一些重大的重新设计 因此 在为不同的小部件手动完成大部分工作之后 objectName选择器 我决定以某种方式对类似的小部件进行分组 例如我有多个QFrames其作用类似于内部表单中的标题 我希望
  • Excel 2013 数据透视表不会更改当前页面,除非手动导航到

    我们有一小段 VBA 代码 多年来一直完美运行 本质上是 Me PivotTables APivot PivotFields AField CurrentPage Some text 这种方法一直有效 直到 Excel 2013 该行将失败

随机推荐

  • Base64 example

    我们的图片大部分都是可以转换成base64编码的data image 这个在将canvas保存为img的时候尤其有用 虽然除ie外 大部分现代浏览器都已经支持原生的基于base64的encode和decode 例如btoa和atob 将ca
  • Netty的拆包粘包问题

    Netty使用的是TCP IP协议 必然会遇到拆包粘包的问题 Netty也给出了相关的解决方案 记录下Netty如何解决拆包粘包问题 TCP IP协议是 流 协议 就是类似水流一样的数据传输方式 当我们多次请求的时候 就会存在多发送和少发送
  • 从plsql导出ddl到PowerDesigner

    1 plsql导出ddl 工具 导出用户对象 选择需要到处的表 多选框 全部不掉 单选框 选单个文件 导出 2 PowerDesigner导入ddl 快捷键Ctrl R DataBase gt Update Model From Datab
  • Python如何判断输入的字符串是否是int或者float或者字符

    1 题目要求 在上一次猜游戏实验题目的基础上 完善程序 实现如下的功能 系统自动生成 1 100 以内的随机整数 让用户通过键盘输入所猜的数 如果 大于预设的数 显示 遗憾 太大了 小于预设的数 显示 遗憾 太小了 如此循环 直到猜中该数
  • 项目管理java_java项目管理经验总结

    1 谈完钱之后 这件事儿就与钱无关了 大家的一致目标就是把这个活干完 干好 别干到一半的时候跟我提钱太少 活太多的屁话 2 接私活主要是看组员是否有足够的时间 精力 能力来投入这件事情 三者缺一不可 我们之前就经常被坑 3 时刻要记住 钱不
  • mysql数据库修改密码的几种方法

    文章目录 MYSQL修改用户密码 update set grant mysqladmin 在日常使用mysql数据库的时候 我们有修改mysql数据库密码的需求 以下介绍四种修改mysql数据库密码的方法 MYSQL修改用户密码 updat
  • windows触摸板的操作

    一 单指 1 轻触 鼠标左键 2 双击后不松开 长按鼠标左键 这个不太好操作 二 双指 1 轻触 鼠标右键 2 上下滑动 鼠标滑轮 3 双指缩放 网页或图片的大小缩放 三 三指 1 轻触 打开搜索 2 下滑 回到桌面 3 上滑 打开程序管理
  • 点击按钮,QMovie动画播放结束时关闭当前窗口

    点击QToolButtoon弹出一个widget widget上有一个按钮 点击按钮后开始播放动画 当动画播放结束的时候发送finish信号 通知窗口关闭函数去关闭当前窗口 点击按钮播放此动画 直接拖控件完成布局 上代码 main cpp
  • C++11 map实现插入后按value自动排序

    本质上还是使用了map自动按照key进行排序的原理 所以将value放入key中可实现按value排序 include
  • 简单记录vue下单元测试及Mock数据

    1 vue cli 创建一个demo 创建一个 demo vue create demo 在VUE CLI 是有提供测试插件的 所以在构建项目时选择一个测试框架 运行测试脚本 在package json 中可以看到运行测试脚本命令 npm
  • 倾心倾力之作《Qt 5.9 C++开发指南》

    五一假期前收到了人民邮电出版社寄来的书 我们写的 Qt 5 9 C 开发指南 终于印刷出来了 从2016年11月开始写书 到今天终于印刷出版 历时约一年半 现在它终于面世了 成书过程 由于做项目的需要 在2014年开始转而用Qt编写软件 在
  • 301与302区别

    301与302区别 定义如下 301 Moved Permanently 被请求的资源已永久移动到新位置 并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一 如果可能 拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器
  • springboot多模块开发中实现打包

    前言 因为我使用的是idea社区版 所以在创建项目的时候他没有springboot的选项 所以只能创建普通maven项目 创建完成查看项目结构和pom文件 这里我并没有觉得有什么不对劲 所以没管 就去搭建其他模块了 这里就不展示了 后来我需
  • python函数与Lambda表达式

    python函数与Lambda表达式 函数的定义 def functionname parameters 函数 文档字符串 function suite return expression 函数定义的参数为形参 表示表示占据一个参数位置 传
  • Sql Server查询语句

    文章目录 Sql Server查询语句 基础查询 条件查询 模糊查询 Sql Server查询语句 对于Sql Server创建的表中的数据进行查询 可以进行 基础查询 条件查询 模糊查询 基础查询 基础查询语句为 select from
  • 央行数字货币研究所、中国信通院合作立项2项区块链国际标准

    国际电信联盟第十六研究组 简称ITU T SG16 于2021年4月19日至2021年4月30日召开全体会议 来自中国 美国 德国 巴西 西班牙 俄罗斯 瑞士 加拿大 英国 韩国 日本等国家和世界卫生组织等国际组织的百余名代表参加了此次为期
  • spring三级缓存总结

    前言 其实说到spring的三级缓存 也是经常被提到 自己也看过对应的源码 但是 总觉得自己还是没有真正的理解 为什么这样说呢 因为每次看到三级缓存相关的技术问题 自己心里感觉还是迷糊的 不知道为什么要有三级缓存 一级缓存不行吗 二级缓存是
  • unity3d学习笔记-动画(2.控制动画与Animator Controller)

    一 探索Animator Controller动画控制器 每当为选定的游戏对象创建第一个动画剪辑时 就会自动创建动画器组件 Animator负责分配动画 但是 它不控制实际的动画剪辑 这个任务落到了动画控制器身上 它也是用第一个动画剪辑自动
  • $.ajax如何在response中获取请求头

    ajax如何在response中获取请求头 下载文件时需要获取后端带在responseHeader中的文件名称 ajax type get url http xxxx currentuser contentType application
  • Qt操作excel的三方库Qtxlsx在Windows下使用注意事项

    Qt操作excel的三方库Qtxlsx在Windows下使用注意事项 文章目录 Qt操作excel的三方库Qtxlsx在Windows下使用注意事项 1 Qt Xlsx简介 2 编译及添加模块 2 1 下载及编译 2 2 拷贝相关文件集成到