【问题标题】:QT how to use QTableView to display a QMap within a QListQT如何使用QTableView在QList中显示QMap
【发布时间】:2013-04-16 16:06:01
【问题描述】:

我的 QList 如下:

QList< QMap<QString, QString> > x;

例如:

table(1) <name<name(1),ABC> >

table(1) <age<age(1),10> >

我希望将“姓名”和“年龄”作为列标题,并将值“ABC”和“10”向下传递给它们。接下来当我有:

table(1) <name<name(2),DFG> >

table(1) <age<age(2),20> >

值“DFG”和“20”在下一行

那么,我该如何做这个显示?

【问题讨论】:

    标签: c++ qt-creator qtableview qlist


    【解决方案1】:

    为此,您必须将数据传递给模型,然后您可以使用 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();
    

    【讨论】:

    • 当然你应该把你的桌子设置成你最喜欢的风格......这里我只是提到了一个例子。
    • 谢谢,它现在可以工作了,(我也编辑了你的答案,请检查)
    猜你喜欢
    • 1970-01-01
    • 2019-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-30
    • 1970-01-01
    • 2010-10-06
    • 2014-03-31
    相关资源
    最近更新 更多