实现一个简单的目录浏览器

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38784098/article/details/77619048

1.新建一个新项目,在QT creator或Vs;

2.实例代码:

#include <QAbstractItemModel>
#include <QAbstractItemView>
#include <QItemSelectionModel>

#include <QDirModel>
#include <QTreeView>
#include <QListView>
#include <QTableView>
#include <QSplitter>

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

	QDirModel *model= new QDirModel;

	QTreeView *tree = new QTreeView;
	//QTreeView tree;
	QListView *list = new QListView ;
	QTableView *table = new QTableView;

	tree->setModel(model);
	//tree.setModel(&model);
	list->setModel(model);
	table->setModel(model);

	tree->setSelectionMode(QAbstractItemView::MultiSelection);
	//tree.setSelectionMode(QAbstractItemView::MultiSelection);
	list->setSelectionModel(tree->selectionModel());
	table->setSelectionModel(tree->selectionModel());

	QObject::connect(tree, SIGNAL(doubleClicked(QModelINdex)), list,SLOT(setRootIndex(QModelIndex)));
	QObject::connect(tree, SIGNAL(doubleClicked(QModelINdex)), table, SLOT(setRootIndex(QModelIndex)));

	QSplitter *splitter = new QSplitter;
	splitter->addWidget(tree);
	splitter->addWidget(list);
	splitter->addWidget(table);
	splitter->show();
    //FileView w;
    //w.show();
    return a.exec();
}

3.运行效果:


猜你喜欢

转载自blog.csdn.net/qq_38784098/article/details/77619048