QTXlsx操作使用教程以及第三方库的添加使用

1.创建一个Qt工程

2. 把xlsx库文件放到工程里面

3.属性配置

C/C++----常规------附件包含目录--:$(SolutionDir)QtXlsx\qtxlsxwriter\include

链接器-----常规---附加库目录---:$(SolutionDir)QtXlsx\qtxlsxwriter\lib

链接器-----输入---附加依赖项:Qt5Xlsx.lib

 4.添加头文件:

#include "xlsxdocument.h",
#include "xlsxformat.h"

例子:

QXlsx::Document outxlsx;

	//表头
	QXlsx::Format format1;
	format1.setFontSize(15);
	format1.setHorizontalAlignment(QXlsx::Format::AlignHCenter);
	format1.setVerticalAlignment(QXlsx::Format::AlignVCenter);
	//format1.setBorderStyle(QXlsx::Format::BorderDashDot);
	outxlsx.write("A1", QString::fromLocal8Bit("退役报废枪械销毁处理情况全过程登记表"), format1);
	outxlsx.mergeCells("A1:X1", format1);


	//第一行
	QXlsx::Format format2;
	format2.setHorizontalAlignment(QXlsx::Format::AlignHCenter);
	format2.setVerticalAlignment(QXlsx::Format::AlignVCenter);
	outxlsx.write("A2", QString::fromLocal8Bit("枪械名称"), format2);
	outxlsx.write("J2", QString::fromLocal8Bit("单位"), format2);
	outxlsx.write("L2", QString::fromLocal8Bit("数量"), format2);
	outxlsx.write("N2", QString::fromLocal8Bit("来源"), format2);
	outxlsx.write("T2", QString::fromLocal8Bit("文件号"), format2);
	outxlsx.mergeCells("B2:I2");
	outxlsx.mergeCells("O2:S2");
	outxlsx.mergeCells("U2:X2");

	第二行

	outxlsx.write("A3", QString::fromLocal8Bit("序号"), format2);
	outxlsx.write("B3", QString::fromLocal8Bit("枪械号码"), format2);
	outxlsx.write("F3", QString::fromLocal8Bit("检查拆解记录"), format2);
	outxlsx.write("J3", QString::fromLocal8Bit("毁形装箱记录"), format2);
	outxlsx.write("N3", QString::fromLocal8Bit("装卸运输记录"), format2);
	outxlsx.write("T3", QString::fromLocal8Bit("投炉熔炼记录"), format2);
	outxlsx.write("X3", QString::fromLocal8Bit("备注"), format2);
	outxlsx.mergeCells("C3:E3");
	outxlsx.mergeCells("H3:I3");
	outxlsx.mergeCells("L3:M3");
	outxlsx.mergeCells("O3:S3");
	outxlsx.mergeCells("U3:W3");

	第三行
	outxlsx.write("B4", QString::fromLocal8Bit("主枪号"), format2);
	outxlsx.write("C4", QString::fromLocal8Bit("枪管号"), format2);
	outxlsx.write("D4", QString::fromLocal8Bit("机枪号或套筒号"), format2);
	outxlsx.write("E4", QString::fromLocal8Bit("机枪框号"), format2);
	outxlsx.write("F4", QString::fromLocal8Bit("日期"), format2);
	outxlsx.write("G4", QString::fromLocal8Bit("检查人"), format2);
	outxlsx.write("H4", QString::fromLocal8Bit("拆解人"), format2);
	outxlsx.write("I4", QString::fromLocal8Bit("监督人"), format2);
	outxlsx.write("J4", QString::fromLocal8Bit("日期"), format2);
	outxlsx.write("K4", QString::fromLocal8Bit("箱(捆)号"), format2);
	outxlsx.write("L4", QString::fromLocal8Bit("毁形装箱人"), format2);
	outxlsx.write("M4", QString::fromLocal8Bit("监督人"), format2);
	outxlsx.write("N4", QString::fromLocal8Bit("日期"), format2);
	outxlsx.write("O4", QString::fromLocal8Bit("运输车号"), format2);
	outxlsx.write("P4", QString::fromLocal8Bit("押运人"), format2);
	outxlsx.write("Q4", QString::fromLocal8Bit("装车人"), format2);
	outxlsx.write("R4", QString::fromLocal8Bit("卸车人"), format2);
	outxlsx.write("S4", QString::fromLocal8Bit("监督人"), format2);
	outxlsx.write("T4", QString::fromLocal8Bit("日期"), format2);
	outxlsx.write("U4", QString::fromLocal8Bit("点验人"), format2);
	outxlsx.write("V4", QString::fromLocal8Bit("核查人"), format2);
	outxlsx.write("W4", QString::fromLocal8Bit("监销人"), format2);

	outxlsx.save();

5.运行。得到结果

参考:

(456条消息) Qt Xlsx使用教程、Qt操作Excel、Qt生成Excel图表、跨平台不依赖Office_超级大洋葱的博客-CSDN博客_qtxlsx

第三方精美控件的添加使用:(450条消息) Qt UI界面美化教程1:【“飞扬青云” Qt精美控件】使用教程1_超级大洋葱的博客-CSDN博客_飞扬青云

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用QtXlsx库来添加行到Excel文件中。下面是一个简单的示例代码: ```cpp #include <QCoreApplication> #include <QAxObject> #include <QVariant> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 创建Excel对象 QAxObject excel("Excel.Application"); excel.setProperty("Visible", false); // 新建工作簿 QAxObject *workbooks = excel.querySubObject("Workbooks"); QAxObject *workbook = workbooks->querySubObject("Add"); // 获取第一个工作表 QAxObject *worksheets = workbook->querySubObject("Worksheets"); QAxObject *worksheet = worksheets->querySubObject("Item(int)", 1); // 添加行 int row = 1; // 要添加的行数 QAxObject *usedRange = worksheet->querySubObject("UsedRange"); int rowCount = usedRange->property("Rows").toInt(); // 获取已有行数 QAxObject *rows = worksheet->querySubObject("Rows"); QAxObject *insertRow = rows->querySubObject("Item(int)", rowCount + 1); insertRow->dynamicCall("Insert()"); // 设置插入行的内容 for (int column = 1; column <= 3; column++) { // 假设插入3列数据 QString value = QString("Data %1").arg(column); QAxObject *cell = worksheet->querySubObject("Cells(int,int)", rowCount + 1, column); cell->setProperty("Value", value); delete cell; } // 保存并关闭工作簿 workbook->dynamicCall("SaveAs(const QString&)", QDir::currentPath() + "/test.xlsx"); workbook->dynamicCall("Close()"); excel.dynamicCall("Quit()"); return a.exec(); } ``` 这个示例代码使用了QAxObject类,它是Qt与ActiveX对象交互的类。首先,我们创建了一个Excel对象,并设置为不可见。然后,新建一个工作簿,获取第一个工作表。接下来,通过插入行的方式添加新行,并设置插入行的内容。最后,保存并关闭工作簿,退出Excel应用程序。 请注意,您需要在项目文件的.pro文件中添加以下配置来使用QtXlsx库: ```pro LIBS += -lQt5Xlsx ``` 希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值