概念
- 在model/view构架中,view从model中获取数据并显示给用户。数据表现的方式不需要和model提供的数据表现形式相同,并且可能与内部的数据结构完全不同。
- 标准模型接口使用QAbstractItemModel,标准视图接口使用QAbstractItemView,他们自己都使用delegates控制渲染、编辑属性。
- views实现基本的用户接口特性,例如菜单、拖拽。一个view可以提供默认的编辑能力,或者他可以与delegate一起生成一个定制的编辑器。
- Views通过selections持续追踪用户的选择,这个selection可以分开为每个view使用或者多个views共享
- 一些views,例如QTableView、QTreeView自带header。这些view中装载了QHeaderView,这个类使用QAbstractItemModel::headerData()获取数据。
<u>使用现有的Views</u>
- QListView
- QTreeView
- QTableView
1.jpg
使用model
1.jpg
2.jpg
注意:这里使用QAbstractItemModel,允许我们对这个模型使用抽象接口,便于我们以后使用别的model替换StringListModel
<u>项选择处理</u>
基本不需要使用