qstandaritemmodel导出某列数据为QStringList
时间: 2024-04-30 11:21:19 浏览: 12
可以使用`QStringList`和`QStandardItemModel`的方法来实现。
首先,使用`QStandardItemModel`创建一个表格模型,并将数据添加到其中:
```cpp
QStandardItemModel* model = new QStandardItemModel(this);
// 添加表头
model->setHorizontalHeaderLabels(QStringList() << "姓名" << "年龄" << "性别");
// 添加数据
QList<QStandardItem*> row1;
row1 << new QStandardItem("张三") << new QStandardItem("20") << new QStandardItem("男");
model->appendRow(row1);
QList<QStandardItem*> row2;
row2 << new QStandardItem("李四") << new QStandardItem("25") << new QStandardItem("女");
model->appendRow(row2);
```
然后,可以通过遍历表格模型的行来获取指定列的数据,并将其存储到`QStringList`中:
```cpp
QStringList dataList;
int column = 1; // 指定要导出的列
for (int row = 0; row < model->rowCount(); ++row) {
QStandardItem* item = model->item(row, column);
dataList << item->text();
}
```
这样,`dataList`中就存储了指定列的所有数据,可以根据需要将其导出。