文章目录
1. 未安装Qxlsx的程序效果
2. 安装Perl(编译Qxlsx源码用)
2.1 下载 `ActivePerl 5.28`
2.2 安装 `ActivePerl 5.28`
3. 下载并编译Qxlsx源码
3.1 下载Qxlsx源码
3.2 编译Qxlsx源码
4. 将编译好的文件复制到Qt路径下
4.1 `bin` 路径文件复制
4.2 `include` 路径文件复制
4.3 `lib` 路径文件复制
4.4 `mkspecs` 路径文件复制
4.5 大功告成!!
5. 使用Qxlsx模块
5.1 安装 xlsx 模块后的效果演示
5.2 使用xlsx加载模板并生成Excel文件
5.3 Qt xlsx官方教程
6. 教程相关文件下载:
本篇文章讲述了如何在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官方教程
教程地址:http://qtxlsx.debao.me/
6. 教程相关文件下载:
Perl+QtXlsx下载:https://download.csdn.net/download/u014779536/12543960
示例工程下载:https://download.csdn.net/download/u014779536/12543987