Qt/C++学习系列之Excel使用记录

Qt/C++学习系列之Excel使用记录

  • 前言
  • The process was ended forcefully.
  • 解决方式
    • 断点查语句
    • 问题
  • 总结


前言

在项目中解析条目达50多条,并且都需要将对应的结果进行显示。为了将结果显示的更加清晰,考虑采用QTableWidget进行表格设置,而在使用过程中遇到一些问题,进行简单的记录。


The process was ended forcefully.

在Excel中,简单的定义了两行表格,使用QStringList定义表格的表头,第二行中在一开始的使用过程中,没有使用QTableWidgetItem进行定义。在保存的时候,使用QAxObject进行数据的获取。

QStringList str= QStringList()<< "序号"<< "输入";
  • str_cq是定义了一个QStringList,设置表头。
QTableWidgetItem *columnHeader = new QTableWidgetItem(str_cq[col]);
  • QTableWidgetItem 是表示单元格的类,new QTableWidgetItem(str_cq[col]) 表示创建一个新的 QTableWidgetItem 对象,并用 str_cq[col] 的值初始化这个对象。
QAxObject* danyuange3=sheet->querySubObject("Cells (int,int)", i, j);
  • QAxObject:表示 Qt 中用于访问 ActiveX 对象的类,这里用于操作 Excel 的单元格。
  • querySubObject 方法获取 Cells 对象的指针,Cells(int, int) 是 Excel 的方法,用于根据行和列索引获取单元格。i和j就是行和列的索引。
    这里要注意:excel的行列是从1开始。

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
通过断点,一句一句跑,以及询问AI,得到一些提示。
在使用Qt以及Excel表格存储中会遇到的问题,我总结了关键点:

  • 软件问题:程序可能出现了严重错误,导致崩溃。可能是软件本身存在漏洞。
  • 系统资源不足:系统可能没有足够的内存或CPU资源供进程继续运行。
  • 用户中断:用户可能通过任务管理器等工具手动结束了进程。

解决方式

断点查语句

在感觉可能出现问题的地方进行断点检查,通过Debug的形式进行问题排查。

  • 模块化查询
    例如:串口通讯是否有问题或解析是否有问题,通过大方向排除,来缩小范围。

  • 函数查询
    在缩小范围后,可以检查函数的输入、输出是否正确;

  • 具体语句
    确认某个函数后,进行逐句排查。

问题

确认问题,在读取单元格时,单元格没有初始化的数据,可能会造成读到数据无法写入。
因此在初始化单元格后,最好将列表设置的行列中都填入数据,放置出现未定义的空单元格的存储。

QTableWidgetItem *emptyItem = new QTableWidgetItem("\\");

这里我在表格初始化就直接定义了"\"。
在这里插入图片描述

在这里插入图片描述


总结

本文仅仅简单介绍了在使用单元格时,保存出现的问题,同时把自己的解决思路也写进来,提供一些问题的解决思路。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/pingmian/83927.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…

并发编程实战(生产者消费者模型)

在并发编程中使用生产者和消费者模式能够解决绝大多数的并发问题。该模式通过平衡生产线程和消费线程的工作能力来提高程序整体处理数据的速度。 生产者和消费者模式&#xff1a; 在线程的世界中生产者就是产生数据的线程&#xff0c;而消费者则是消费数据的线程。在多线程开…

力扣hot100---152.乘积最大子数组

给你一个整数数组 nums &#xff0c;请你找出数组中乘积最大的非空连续子数组&#xff08;该子数组中至少包含一个数字&#xff09;&#xff0c;并返回该子数组所对应的乘积。 测试用例的答案是一个 32-位 整数。 示例 1: 输入: nums [2,3,-2,4] 输出:6解释: 子数组 [2,3] 有最…

什么是DevOps智能平台的核心功能?

在数字化转型的浪潮中&#xff0c;DevOps智能平台已成为企业提升研发效能、加速产品迭代的核心工具。然而&#xff0c;许多人对“DevOps智能平台”的理解仍停留在“自动化工具链”的表层概念。今天&#xff0c;我们从一个真实场景切入&#xff1a;假设你是某互联网公司的技术负…

柯尼卡美能达Konica Minolta bizhub 205i打印机信息

基本参数 产品类型&#xff1a;激光数码复合机颜色类型&#xff1a;黑白涵盖功能&#xff1a;复印、打印、扫描最大原稿尺寸&#xff1a;A3内存容量&#xff1a;256MB供纸容量&#xff1a;标配 350 页&#xff0c;最大 1350 页介质重量&#xff1a;标准纸盒 64-157g/㎡&#xf…

虚拟机与宿主机应用通信配置指南

1. 选择虚拟机网络模式 桥接模式 (Bridged) 客户机获得独立局域网IP&#xff0c;与宿主机同网段。 客户机可直接访问宿主机IP&#xff08;如 192.168.1.x&#xff09;。 Host-Only 模式 仅宿主机与客户机之间通信&#xff0c;宿主机通常有一个虚拟网卡&#xff08;如 192.16…

网络库libhv介绍

libhv是一个类似于libevent、libev、libuv的跨平台网络库&#xff0c;提供了更易用的接口和更丰富的协议&#xff0c;用来开发TCP/UDP/SSL/HTTP/WebSocket/MQTT 客户端/服务端。源码地址&#xff1a;https://github.com/ithewei/libhv&#xff0c;最新发布版本为v1.3.3&#xf…

施耐德特价型号伺服电机VIA0703D31A1022、常见故障

⚙️ ‌一、启动类故障‌ ‌电机无法启动‌ ‌可能原因‌&#xff1a;电源未接通、制动器未释放、接线错误或控制器故障。‌解决措施‌&#xff1a; 检查电源线路及断路器状态&#xff1b;验证制动器是否打开&#xff08;带制动器型号&#xff09;&#xff1b;核对电机与控制器…

【Redis从入门到精通实战文章汇总】

&#x1f4da;博客主页&#xff1a;代码探秘者 ✨专栏&#xff1a;文章正在持续更新ing… ✅C语言/C&#xff1a;C&#xff08;详细版&#xff09; 数据结构&#xff09; 十大排序算法 ✅Java基础&#xff1a;JavaSE基础 面向对象大合集 JavaSE进阶 Java版数据结构JDK新特性…

MCP 技术完全指南:微软开源项目助力 AI 开发标准化学习

引言 在人工智能快速发展的今天&#xff0c;如何让 AI 模型与客户端应用程序之间建立标准化的交互机制&#xff0c;已成为开发者们亟待解决的关键问题。微软近期开源的 mcp-for-beginners 项目&#xff0c;为我们提供了一个系统性学习 Model Context Protocol (MCP) 的绝佳机会…

SQL进阶之旅 Day 20:锁与并发控制技巧

【JDK21深度解密 Day 20】锁与并发控制技巧 文章简述 在高并发的数据库环境中&#xff0c;锁与并发控制是保障数据一致性和系统稳定性的核心机制。本文作为“SQL进阶之旅”系列的第20天&#xff0c;深入探讨SQL中的锁机制、事务隔离级别以及并发控制策略。文章从理论基础入手…

Qt(part 2)1、Qwindow(菜单栏,工具栏,状态栏),铆接部件,核心部件 ,2、添加资源文件 3、对话框

1、Qwindow tips&#xff1a;1&#xff0c;首先为什么创建出的对象基本都是指针形式&#xff0c;个人觉得是对象树的原因&#xff08;自动释放内存&#xff09;&#xff0c;指针来访问成员函数->的形式。2&#xff0c;菜单栏只能一个的&#xff0c;放窗口基本Set&#xff0c…

一款“短小精悍的”手机录屏软件

这个时代&#xff0c;手机自带录屏功能已经不是什么稀奇的事情了&#xff0c;但是手机自带的录屏功能不都是完美的&#xff0c;无法静音录屏、、不能修改画质、不能剪辑、不能自定义水印......emmm.....貌似除了录屏就什么都不会 今天分享的这款软件——ADV屏幕录制汉化版&…

力扣HOT100之二分查找:153. 寻找旋转排序数组中的最小值

这道题是上一道题&#xff1a;33. 搜索旋转排序数组的前置题&#xff0c;有点没看懂力扣为什么要这样安排题目顺序&#xff0c;应该把这道题按排在前面才对啊。。。这道题的思路已经在上一道题的思路中说过了&#xff0c;这里就直接复制粘贴上一篇博客中的内容了。 我们阅读完题…

libiec61850 mms协议异步模式

之前项目中使用到libiec61850库&#xff0c;都是服务端开发。这次新的需求要接收服务端的遥测数据&#xff0c;这就涉及到客户端开发了。 客户端开发没搞过啊&#xff0c;挑战不少&#xff0c;但是人不就是通过战胜困难才成长的嘛。通过查看libiec61850的客户端API发现&#xf…

【 知你所想 】基于ernie-x1-turbo推理模型实现趣味猜心游戏

&#x1f31f; 项目特点 &#x1f916; 智能AI&#xff1a;基于文心一言大模型&#xff0c;具有强大的推理能力&#x1f3af; 实时思考&#xff1a;展示AI的思考过程&#xff0c;让你了解AI是如何推理的&#x1f3ae; 互动性强&#xff1a;通过简单的"是/否"问答&…

Excel 模拟分析之单变量求解简单应用

正向求解 利用公式根据贷款总额、还款期限、贷款利率&#xff0c;求每月还款金额 反向求解 根据每月还款能力&#xff0c;求最大能承受贷款金额 参数&#xff1a; 目标单元格&#xff1a;求的值所在的单元格 目标值&#xff1a;想要达到的预期值 可变单元格&#xff1a;变…

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…

【Qt】之【Get√】【Bug】通过值捕获(或 const 引用捕获)传进 lambda,会默认复制成 const

通过值捕获&#xff08;或 const 引用捕获&#xff09;传进 lambda&#xff0c;会默认复制成 const。 背景 匿名函数外部定义 QSet<QString> nameSet,需要传入匿名函数使用修改 connect(dlg, ..., [nameSet](...) {nameSet.insert(name); // ❌ 这里其实是 const QSet…

css元素的after制作斜向的删除线

<div class"price_div"></div>.price_div{position: relative; } ::after{content: ;position: absolute;left: 0;top: 50%;width: 100%;height: 2px;background: #FF186B;transform: rotate(-5deg); }