qt tablewidget利用QXlsx导出为excel
时间: 2023-11-28 18:03:50 浏览: 315
1.首先需要安装QXlsx库,可以在Qt的帮助文档中找到相关的安装方法。
2.在Qt中创建一个TableWidget控件,并添加数据到其中。
3.导出数据到excel文件中,可以按照以下步骤进行:
(1)包含QXlsx库的头文件:
#include <QXlsx/QtXlsx>
(2)创建一个QXlsx::Document对象:
QXlsx::Document xlsx;
(3)使用循环将TableWidget中的数据添加到QXlsx::Document对象中:
for(int i=0;i<ui->tableWidget->rowCount();i++)
{
for(int j=0;j<ui->tableWidget->columnCount();j++)
{
xlsx.write(i+1,j+1,ui->tableWidget->item(i,j)->text());
}
}
(4)设置保存的文件路径和名称,并将数据保存到excel文件中:
xlsx.saveAs("D:/test.xlsx");
完整的代码如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QXlsx/QtXlsx>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//添加数据到TableWidget
ui->tableWidget->setRowCount(3);
ui->tableWidget->setColumnCount(3);
ui->tableWidget->setItem(0,0,new QTableWidgetItem("1"));
ui->tableWidget->setItem(0,1,new QTableWidgetItem("2"));
ui->tableWidget->setItem(0,2,new QTableWidgetItem("3"));
ui->tableWidget->setItem(1,0,new QTableWidgetItem("4"));
ui->tableWidget->setItem(1,1,new QTableWidgetItem("5"));
ui->tableWidget->setItem(1,2,new QTableWidgetItem("6"));
ui->tableWidget->setItem(2,0,new QTableWidgetItem("7"));
ui->tableWidget->setItem(2,1,new QTableWidgetItem("8"));
ui->tableWidget->setItem(2,2,new QTableWidgetItem("9"));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
//导出数据到excel文件
QXlsx::Document xlsx;
for(int i=0;i<ui->tableWidget->rowCount();i++)
{
for(int j=0;j<ui->tableWidget->columnCount();j++)
{
xlsx.write(i+1,j+1,ui->tableWidget->item(i,j)->text());
}
}
xlsx.saveAs("D:/test.xlsx");
}
编译运行程序,点击“导出数据”按钮,即可将TableWidget中的数据导出到excel文件中。
阅读全文