QDemo之QStandardItemModel

自定义树形模型

//treeView.h
//不要忘了包含这2个头文件:QStandardItem/QStandardItemModel
public:QStandardItemModel *getTreeModel(); 

//treeView.cpp
//获取树形模型
QStandardItemModel *TreeView::getTreeModel()
{
    QStandardItemModel *model = new QStandardItemModel(this);
    QStandardItem *rootItem = model->invisibleRootItem();

    //改变这里的n,明显可以感觉到加载是显示速度慢多了,大于W的的时候,下拉都非常容易卡死
    for(int i = 1, n = 9; i <= n; i++){

        //item可以设置图标、文本、表格属性
        QStandardItem *item = new QStandardItem(QString("节点 %0").arg(i));
        rootItem->appendRow(item);

        //不加这个,是1个root节点下,一个子节点,只有2级
        //加上这个,是1个root节点下,n个子节点,共1+n级
        rootItem = item;
    }
    return model;
}

//这里用QTreeView控件显示
ui->QTreeView_show->setModel(this->getTreeModel());
 



你可能感兴趣的:(qt,QStandardItem)