【发布时间】:2018-07-18 07:24:24
【问题描述】:
我对 QT 很陌生,我有一个应用程序,其中有一个 QTableWidget,我想为我的应用程序添加保存和加载选项。问题是如何在 QTableWidget 中保存和加载数据。我找到了这个页面:http://doc.qt.io/qt-5/qtwidgets-tutorials-addressbook-part6-example.html#defining-the-addressbook-class 但它没有用:我尝试了这样的代码来保存:
void training::on_pushButton_3_clicked()
{
QVector<QTableWidgetItem*> outvector;
for(int i = 0;i<ui->tableWidget->rowCount();i++)
for(int ii=0;i<ui->tableWidget->columnCount();ii++)
outvector.append(ui->tableWidget->item(i,ii));
QString path = QFileDialog::getSaveFileName(this,QString("Save file path"),"",QString("table (*.tbl);;All Files (*)"));
if(path.isEmpty())
return;
else{
QFile file(path);
if(!file.open(QIODevice::WriteOnly)){
QMessageBox::information(this,"Error",file.errorString());
return;
}
else{
QDataStream out(&file);
out.setVersion(QDataStream::Qt_5_11);
out<<outvector;
}
}
}
是这样吗?!如果可行,如何再次加载信息;如果不是如何在 tablewidget 中保存和加载数据?
任何帮助将不胜感激。
【问题讨论】:
标签: c++ qt save load qtablewidget