qt相关资料
处理数据项的选择
view中数据项选择机制由QItemSelectionModel类提供。所有标准的view缺省都构建它们自己的选择模型,
以标准的方式与它们交互。选择模型可以用selectionModel()函数取得,替代的选择模型也可以通过
setSelectionModel()来设置。当我们想在一个model上提供多个一致的views时,这种对选择模型的控制能力非常有用。通常来讲,除非你子类化一个model或view,你不必直接操纵selections的内容。
多个views之间共享选择
接着上边的例子,我们可以这样:
secondTableView->setSelectionModel(firstTableView->selectionModel()); 现在所有views都在同样的选择模型上操作,数据与选择项都保持同步。
上面的例子中,两个view的类型是相同的,假如这两个view类型不同,那么所选择的数据项在每个view
中的表现形式会有很大的不同。例如,在一个table view中一个连续的选择,在一个tree view中表现出
来的可能会是几个高亮的数据项片断的组合。
Qt Model/View 学习笔记 (六)
清源游民 gameogre@
在views中选择数据项
概念
用于新的view类中的选择模型比Qt3中的模型有了很大的改进。它为基于model/view架构的选择提供了更为全面的描述。尽管对提供了的views来说,负责操纵选择的标准类已经足以应付,但是你也可以创建特定的选择模型来满足你特殊的需求。
关于在view被选择的数据项的信息保持在QItemSelectionModel类的实例中。它也为每个独立的model中的数据项维护model indexes信息,与任何views都关联关系。既然一个model可用于多个views,那么在多个views之间共享选择信息也是可以做到的,这使得多个views可以以一致的方式进行显示。