#include “qstandmodel.h”
#include <QtWidgets/QApplication>
#include
#include
#include
#include
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QStandardItemModel *model = new QStandardItemModel();
model->setHorizontalHeaderLabels(QStringList() << QStringLiteral(“省市县”));
// 省
QStandardItem *provinceItem_1 = new QStandardItem(QStringLiteral("山东省"));
QStandardItem *provinceItem_2 = new QStandardItem(QStringLiteral("江苏省"));
// 市
QStandardItem *cityItem_1_1 = new QStandardItem(QStringLiteral("济南市"));
QStandardItem *cityItem_1_2 = new QStandardItem(QStringLiteral("青岛市"));
QStandardItem *cityItem_1_3 = new QStandardItem(QStringLiteral("淄博市"));
QStandardItem *cityItem_2_1 = new QStandardItem(QStringLiteral("南京市"));
QStandardItem *cityItem_2_2 = new QStandardItem(QStringLiteral("无锡市"));
QStandardItem *cityItem_2_3 = new QStandardItem(QStringLiteral("徐州市"));
// 县9
QStandardItem *countyItem_1_3_1 = new QStandardItem(QStringLiteral("即墨市"));
QStandardItem *countyItem_1_3_2 = new QStandardItem(QStringLiteral("城阳区"));
// [1] 创建一级节点:model 下创建省节点
model->appendRow(provinceItem_1);
int n = provinceItem_1->rowCount();
//model->appendRow(provinceItem_2);
// [2] 创建二级节点:provinceItem 下创建市节点
provinceItem_1->appendRow(cityItem_1_1);
provinceItem_1->appendRow(cityItem_1_2);
provinceItem_1->appendRow(cityItem_1_3);
n = provinceItem_1->rowCount();
provinceItem_2->appendRow(cityItem_2_1);
provinceItem_2->appendRow(cityItem_2_2);
provinceItem_2->appendRow(cityItem_2_3);
// [3] 创建三级节点:cityItem 下县节点
//cityItem_1_3->appendRow(countyItem_1_3_1);
//cityItem_1_3->appendRow(countyItem_1_3_2);
QTreeView *view = new QTreeView();
view->setModel(model);
view->resize(500, 500);
view->show();
view->expandAll();
int N = model->rowCount();
return a.exec();
}