今天有点痿了,昨天晚上2点左右睡的,怪我太痴迷编程????
NO!NO!NO! 看网络小说到2点,= =。我也是醉了,不知道为什么昨天晚上就是睡不着,然后就掏出手机看起了小说,结果是TMD居然看到了精彩片段,呵呵,等我回过神来已经2点了,坑。。。。
今天就做了个简单的小程序,然后就看看书,也没怎么敲代码,我觉得还是蛮好的,有时候不能往死里敲代码,还是要休息一下,看看其他的,思考一下下一步怎么走。
恩!就是这样,好吧,前面的这些才是今天的主要收获!!
/**
* 书本:【Qt5开发及实例】
* 功能:实现MVC的模型/视图类
* 文件:main.cpp
* 时间:2015年1月27日12:29:22
* 作者:cutter_point
*/
#include <QApplication>
#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;
//三种显示模式
QTreeView tree;
QListView list;
QTableView table;
tree.setModel(&model);
list.setModel(&model);
table.setModel(&model);
tree.setSelectionMode(QAbstractItemView::SingleSelection); //单选
// tree.setSelectionMode(QAbstractItemView::MultiSelection); //多选
list.setSelectionMode(QAbstractItemView::MultiSelection); //多选
// table.setSelectionMode(tree.selectionModel()); //多选
table.setSelectionMode(QAbstractItemView::MultiSelection); //多选
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->setWindowTitle(QObject::tr("Model/View"));
splitter->show();
return a.exec();
}
原文地址:http://blog.csdn.net/cutter_point/article/details/43200743