文章目录
本篇文章讲述了如何在windows环境下为Qt5安装Qxlsx模块,以及Qxlsx模块的简单使用。
Perl+QtXlsx下载:https://download.csdn.net/download/u014779536/12543960
示例工程下载:https://download.csdn.net/download/u014779536/12543987
1. 未安装Qxlsx的程序效果
- 新建一个程序,在
pro
文件中加入:
QT += xlsx
- 在界面中添加一个按钮,设置以下槽函数:
/*
* @brief 点击自动生成按钮
*/
void Widget::on_Btn_clicked()
{
//![0]
QXlsx::Document xlsx("EXCEL模板.xlsx");
//![0]
//![1]
xlsx.write("A1", "Hello Qt!");
//![1]
//![2]
xlsx.saveAs("生成的Qxlsx表格.xlsx");
//xlsx.save();
//![2]
}
在未安装Qxlsx模块的情况下程序会报错:
现在我们开始安装Qxlsx模块!
2. 安装Perl(编译Qxlsx源码用)
编译Qxlsx源码需要用到Perl5,所以先安装perl5.
2.1 下载 ActivePerl 5.28
perl5地址:https://www.perl.org/get.html
- 打开上面的网址,选择 ActiveState Prel
- 选择 5.28版本(点击后需要登录github,自行登录)
- 选择 Download Builds下载 exe 格式安装文件
- 下载完成:
2.2 安装 ActivePerl 5.28
- 双击安装包:
- 接受条款:
- 选择典型安装:
- 勾选以下选项:
- 开始安装:
- 等待安装完成:
- 安装完成,重启,重启,马上重启电脑:
3. 下载并编译Qxlsx源码
3.1 下载Qxlsx源码
下载地址:https://github.com/dbzhang800/QtXlsxWriter
- 选择下载zip压缩包到本地:
- 下载完成,解压:
3.2 编译Qxlsx源码
- 使用QT5打开
qtxlsx.pro
- 选择编译器
- 选择编译方式:
- 点击“ctrl+B”构建项目,注意是 构建!构建!构建! 不要“ctrl+R”运行
- 构建完成,有报错,但是不用管:
- 文件夹预览:
4. 将编译好的文件复制到Qt路径下
找到Qt安装路径:
4.1 bin
路径文件复制
4.2 include
路径文件复制
4.3 lib
路径文件复制
4.4 mkspecs
路径文件复制
复制构建目录下的 mkspecs\modules\qt_lib_xlsx.pri
到 msvc2017_64\mkspecs\modules
下:
4.5 大功告成!!
开心一下啊~可以使用了
5. 使用Qxlsx模块
5.1 安装 xlsx 模块后的效果演示
我们再来看一下效果,安装xlsx模块前:
安装xlsx模块后:
5.2 使用xlsx加载模板并生成Excel文件
模板文件:
程序界面:
关键代码:
/*
* @brief 点击自动生成按钮
*/
void Widget::on_Btn_StartGenerate_clicked()
{
//![0]
QXlsx::Document xlsx("EXCEL模板.xlsx");
//![0]
//![1]
xlsx.write("A1", "Hello Qt!");
//![1]
//![2]
xlsx.saveAs("生成的Qxlsx表格.xlsx");
//xlsx.save();
//![2]
}
成功生成:
预览:
5.3 Qt xlsx官方教程
6. 教程相关文件下载:
Perl+QtXlsx下载:https://download.csdn.net/download/u014779536/12543960
示例工程下载:https://download.csdn.net/download/u014779536/12543987
标签:Qxlsx,xlsx,例程,源码,模块,安装,下载 来源: https://blog.csdn.net/u014779536/article/details/106908387
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。