Qtxlsx的使用
上一遍讲述了基于Qt5.9.8下编译Xtxlsx,本遍讲述基于Qt5.9.8下使用Qtxlsx
1、打开Qt Creator 4.8.2(Enterprise),创建工程,选择版本
2、在pro文件中添加QT += xlsx
3、在main.cpp中添加头文件
4、main函数添加如下代码
QFile::remove("D:/1.xlsx");
QXlsx::Document doc("D:/1.xlsx");
//报表标题(1-4行)
doc.setRowHeight(1,4,30);
Format title_format;
title_format.setFontSize(11);
title_format.setFontBold(true);
title_format.setFontColor(QColor(Qt::red));
title_format.setBorderStyle(Format::BorderThin);
title_format.setHorizontalAlignment(Format::AlignLeft);
title_format.setVerticalAlignment(Format::AlignVCenter);
doc.mergeCells("A1:H1",title_format);
doc.mergeCells("A2:H2",title_format);
doc.mergeCells("A3:H3",title_format);
doc.mergeCells("A4:H4",title_format);
doc.write("A1","巡视单位:高岐变");
doc.write("A2","巡视路线:安防巡视");
doc.write("A3","巡视时间:2019-08-28 14:47:30");
doc.write("A4","巡视人员:hs");
//巡视属性(5行)
doc.setColumnWidth(1,15);
doc.setColumnWidth(2,15);
doc.setColumnWidth(3,15);
doc.setColumnWidth(4,15);
doc.setColumnWidth(5,15);
doc.setColumnWidth(6,50);
doc.setColumnWidth(7,50);
doc.setColumnWidth(8,15);
doc.setRowHeight(5,20);
Format attr_format;
attr_format.setFontSize(11);
attr_format.setFontBold(true);
attr_format.setFontColor(QColor(Qt::black));
attr_format.setBorderStyle(Format::BorderThin);
attr_format.setHorizontalAlignment(Format::AlignHCenter);
attr_format.setVerticalAlignment(Format::AlignVCenter);
attr_format.setPatternBackgroundColor(QColor(Qt::gray));
doc.write("A5","变电站名称",attr_format);
doc.write("B5","巡视路线名",attr_format);
doc.write("C5","巡视点名",attr_format);
doc.write("D5","分析时间",attr_format);
doc.write("E5","分析结果",attr_format);
doc.write("F5","原始图片",attr_format);
doc.write("G5","分析图片",attr_format);
doc.write("H5","备注",attr_format);
//内容(从第6行开始)
for(int i=6;i<20;i++)
{
doc.setRowHeight(i,180);
Format cell_format;
cell_format.setFontSize(11);
cell_format.setFontColor(QColor(Qt::black));
cell_format.setBorderStyle(Format::BorderThin);
cell_format.setHorizontalAlignment(Format::AlignHCenter);
cell_format.setVerticalAlignment(Format::AlignVCenter);
doc.write(i,1,"测试变电站",cell_format);
doc.write(i,2,"测试路线",cell_format);
doc.write(i,3,"测试点",cell_format);
doc.write(i,4,"2019-11-11 00:00:00",cell_format);
doc.write(i,5,"无",cell_format);
QImage image1("D:/CPSB_test_2016.jpg");
QImage image2("D:/ZJFX_test_2016.jpg");
doc.insertImage(i-1,6-1,image1.scaled(360,240,Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
doc.insertImage(i-1,7-1,image2.scaled(360,240,Qt::IgnoreAspectRatio,Qt::SmoothTransformation));
doc.write(i,8," ",cell_format);
}
doc.save();
5、最后生成的报表如下
6、更多的使用可以参照E:/QtXlsxWriter-master/examples
里面包含了Qtxlsx各种各样的使用。
Qtxlsx的使用的更多相关文章
- qt 使用qtxlsx 读写excel
https://github.com/dbzhang800/QtXlsxWriter 下载qtxlsx地址 QtXlsx is a library that can read and write Ex ...
- 使用QtXlsx来读写excel文件
概述:QtXlsx是功能非常强大和使用非常方便的操作excel类库.包括对excel数据读写.excel数据格式设置及在excel里面根据数据生成各种图表. 下面重点介绍如何安装和使用QtXlsx. ...
- windows下Qt编译Qtxlsx库和qtxlsx库的使用方法
最近接了个项目,合作的学长让用Qt写,而其中最重要的需求是将数据库的数据写入excel表格中和将excel的数据导入到数据库中,自己查阅了和多资料,最后决定使用qtxlsx开源库来操作excel,在编 ...
- 基于Qt 5.9.8,编译Qtxlsx
1.源码下载地址:https://github.com/dbzhang800/QtXlsxWriter 2.下载并安装编译时需要的工具 Perl:https://www.perl.org/get.ht ...
- Qtxlsx
https://blog.csdn.net/qq_40194498/article/details/80817264
- 【转贴】-- 基于QT的跨平台应用开发
原帖地址:http://www.cnblogs.com/R0b1n/p/4106613.html 1 Qt简介 Qt是1991年奇趣科技开发的一个跨平台的C++图形用户界面应用程序框架.它提供给应用程 ...
- QtXlsxWriter
Code Issues26 Pull requests2 Pulse Graphs HTTPS clone URL You can clone with HTTPS orSubversion. C ...
- vs2008中xlslib与libxls库的编译及使用
C++用来操作Excel的方法很多,但是涉及到跨平台,同时又要对Excel的读写操作兼顾,而且免费的库,那应该是要用xlslib和libxls了.由于技术比较菜,折腾这个折腾了一个星期了.最开始是使用 ...
- 39.QT-Qtxlsx库使用
之前参考博客https://blog.csdn.net/c3060911030/article/details/51560239下载Qtxlsx库,然后编译的时候,显示: error: invalid ...
随机推荐
- Spring整合JDBC和Druid连接池
我的博客名为黑客之谜,喜欢我的,或者喜欢未来的大神,点一波关注吧!顺便说一下,双十二快到了,祝大家双十二快乐,尽情的买买买~ 如果转载我的文章请标明出处和著名,谢谢配合. 我的博客地址为: https ...
- LoadRunner通过火狐浏览器录制脚本后,进行回放时,回放脚本很慢
原因:火狐浏览器在录制的时候,录制了下载插件的脚本 解决办法:在脚本中删除额外资源中的下载代码
- 负环--spfa
洛谷板子题 负环?是有负权边的环还是一个边权之和为负的环? 还没有准确的定义(那就先忽略吧qwq 判断负环的方法: 暴力枚举/spfa/mellman—ford/奇怪的贪心/超神的搜索 可惜我只会sp ...
- laravel 模型观察器
模型观察器 对模型的生命周期内的多个时间点进行监控,分别有 ~ing 和 ~ed 事件 每个监控方法接收 model 作为唯一参数 使用观察器 创建观察器文件,一个普通类,不需要继承什么 针对需要的事 ...
- Markdown Learning Notes
Markdown 教程 Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档. Markdown 语言在 2004 由约翰·格鲁伯(英语:John Gruber)创建. ...
- python正则表达式中括号的作用,形如 "(\w+)\s+\w+"
先看一个例子: import re string="abcdefg acbdgef abcdgfe cadbgfe" #带括号与不带括号的区别 regex=re.compile(& ...
- js 判断回文字符串
回文字符串:字符串从前往后读和从后往前读字符顺序是一致的. 判断一个字符串是不是回文字符串 function isPalindrome(str) { var str1 = str.split(''). ...
- 「NOIP2013」货车运输
传送门 Luogu 解题思路 首先 \(\text{Kruskal}\) 一下,构造出一棵森林. 并查集还要用来判断连通性. 倍增 \(\text{LCA}\) 的时候顺便维护一下路径最小值即可. 细 ...
- Linux - 找到正在使用的 Shell 是哪个
1. ps -p $$ 一个名为 "$$" (这是shell的特殊参数),表示当前你正在运行的 shell 实例的 PID 2. echo $0 3. echo $SHELL - ...
- 3_5 生成元(UVa1583)
如果x加上x的各个数字之和得到y,就说x是y的生成元.给出n(1<=n<=100000),求最小生成元.无解输出0.例如,n=216,121,2005时的解分别为198,0,1979. 样 ...