我有一个QList如下:
QList< QMap<QString, QString> > x;
例如:
table(1) <name<name(1),ABC> >
table(1) <age<age(1),10> >
我希望将“name”和“age”作为列标题,并将值“ABC”和“10”放在其中。接下来我有:
table(1) <name<name(2),DFG> >
table(1) <age<age(2),20> >
值“DFG”和“20”出现在下一行
那么,我该如何进行此显示呢?
答案 0 :(得分:2)
为此,您必须将数据传递给模型,然后才能使用QTableView显示数据; 要为表设置模型,请使用以下示例:
// creating a 4*4 table
QStandardItemModel* table_model = new QStandardItemModel(4, 4);
for (int row = 0; row < 4; ++row) {
for (int column = 0; column < 4; ++column) {
QStandardItem *item = new QStandardItem((QString())); // you should set your data here (in this case as a string)
table_model.setItem(row, column, item);
}
}
然后你应该将模型传递给tableview:
QTableView table;
table.setModel(table_model);
table.show();