QListView简介
QListView列表视图可以用来以列表的形式来展示数据。在Qt中使用Model-View结构来处理数据与视图之间的关系,Model负责数据的存取,View负责数据的展示, 二者之间数据的交互则是通过委托(delegate)来实现。
QT提供了一些现成的models用于处理数据项:
QStringListModel 用于存储简单的QString列表;
StandardItemModel 管理复杂的树型结构数据项,每项都可以包含任意数据;
QDirModel 提供本地文件系统中的文件与目录信息;
QSqlQueryModel, QSqlTableModel,QSqlRelationTableModel用来访问数据库;
QListView是Model-View框架中的一个类,是Qt Model-View框架的组成部分,QListView实现了QAbstractItemView类定义的接口,以使其能够显示从QAbstractItemModel类派生的模型提供的数据。
QListView常用方法:
setModel(): 用来设置View所关联的Model,可以使用Python原生的list作为数据源Model;
selectedItem(): 选中Model的条目;
isSelected(): 判断Model中的某条目是否被选中;
setViewMode(): 设置视图模式。(ListMode: 条目从上到下布局,小尺寸显示, IconMode: 条目从左到右布局,大尺寸显示)
QListView常用信号:
clicked: 单击某项时,发射此信号;
doubleClicked: 双击击某项时,发射此信号;
activated: 当用户激活index指定的项目时,发射此信号;
entered: 当鼠标光标进入index指定的项目时,发射此信号;
iconSizeChanged: 在视图可见时设置此图标大小时,发射此信号;
indexesMoved: 在视图中移动索引时,发射此信号;
pressed: 按下鼠标按钮时,发射此信号;
viewportEntered: 当鼠标光标进入视图时,发射此信号。