![](https://csdnimg.cn/release/download_crawler_static/87052778/bg8.jpg)
先装配出一个 QDirModel 以供使用,再创建 views 去显示目录的内容。
这给我展示了使用 model 的最简单的方式。
model 的创建与使用都在 main()函数中完成:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QSplitter *splitter = new QSplitter;
QDirModel *model = newQDirModel;
//从缺省目录创建数据
QTreeView *tree = new QTreeView(splitter);
tree->setModel(model);
tree->setRootIndex(model->index(QDir::currentPath()));
QListView *list = newQListView(splitter);
list->setModel(model);
list->setRootIndex(model->index(QDir::currentPath()));
//配置一个 view 去显示 model 中的数据,只需要简单地调用 setModel(),
并把目录 model 作为参数传递
//setRootIndex()告诉 views 显示哪个目录的信息,这需要提供一个
model index,然后用这个
//model index 去 model 中去获取数据
//index()这个函数是 QDirModel 特有的,通过把一个目录做为参数,得
到了需要的 model index
//其他的代码只是窗口 show 出来,进入程序的事件循环就好了
splitter->setWindowTitle("Two views onto the same directory model");
splitter->show();
return app.exec();
}