Selection
model的选中一般都是通过view在ui界面中可视化进行的(其实也是用的默认selectionModel),但selectionModel可以提供编程方式来进行选中
selectionModel与数据model没多大关系,主要是与view绑定,处理view在ui上的选中操作等
selection=new QItemSelectionModel(model);//通常绑定一个selection到model上,用于操控在view上的选中行为
//类似于再copy一份数据model的副本(结构),建立一个新的model来提供选中操作
sel=view->selectionModel();//获取view的selectionModel,直接对model进行操作即可反映到view上
view->setSelectionModel(selection);//或是对selectionModel更改后再set到view上
view1->setSelectionModel(view2->selectionModel());//同步两个view的选中操作
//绑定selection的信号到特定槽函数,对选中行为进行处理
connect(selection,SIGNAL(currentChanged(QModelIndex,QModelIndex)),
this,SLOT(on_SelectionChanged(QModelIndex,QModelIndex)));
view->setSelectionMode(QAbstractItemView::ExtendedSelection);//通过view更改选择模式
view->setSelectionBehavior(QAbstractIte