QT开发中文网

c++ qt treeview的添加多个子项

可以使用QStandardItemModel来实现向treeview中添加多个子项。以下是一个示例代码:

#include <QApplication>
#include <QTreeView>
#include <QStandardItemModel>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QTreeView treeView;
    QStandardItemModel standardModel;

    QList<QStandardItem *> rootRow;
    QStandardItem *item1 = new QStandardItem("Item 1");
    QStandardItem *item2 = new QStandardItem("Item 2");
    rootRow.append(item1);
    rootRow.append(item2);
    standardModel.appendRow(rootRow);

    QList<QStandardItem *> childRow1;
    QStandardItem *childItem1 = new QStandardItem("Child Item 1");
    QStandardItem *childItem2 = new QStandardItem("Child Item 2");
    childRow1.append(childItem1);
    childRow1.append(childItem2);
    item1->appendRow(childRow1);

    QList<QStandardItem *> childRow2;
    QStandardItem *childItem3 = new QStandardItem("Child Item 3");
    QStandardItem *childItem4 = new QStandardItem("Child Item 4");
    childRow2.append(childItem3);
    childRow2.append(childItem4);
    item2->appendRow(childRow2);

    treeView.setModel(&standardModel);
    treeView.show();

    return a.exec();
}

在上面的代码中,我们首先创建了一个QStandardItemModel和一个QTreeView,并将QStandardItemModel设置为treeview的模型。然后,我们创建了两行数据作为根节点下的子项,分别命名为“Item 1”和“Item 2”。接着,我们又分别在“Item 1”和“Item 2”下面添加了两行子项。

注意,在使用QStandardItemModel时,我们需要使用QList来存储每一行数据,并将其添加到model中。同时,我们还需要使用appendRow()函数来将子项添加到父项下面。

最后,我们显示treeview并运行程序,就可以看到成功添加了多个子项的效果。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=1143

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?