1. QListView 概述
- 用途:用于显示列表数据(单列),基于 Model/View 架构,支持自定义数据模型和视图样式。
- 与 QListWidget 的区别:
QListWidget
是封装好的便捷类(基于QListView
+QStandardItemModel
),适合简单场景。QListView
更灵活,允许自定义模型(如QAbstractItemModel
),适合复杂数据或性能敏感场景。
2. 创建与基本使用
基本步骤:
-
设置模型:绑定数据模型(如
QStandardItemModel
、QStringListModel
或自定义模型)。QStandardItemModel *model = new QStandardItemModel(this); QListView *listView = new QListView(this); listView->setModel(model); // 添加数据项 model->appendRow(new QStandardItem("Item 1")); model->appendRow(new QStandardItem("Item 2"));
-
数据绑定:通过模型管理数据,视图自动更新。
3. 常用属性与方法
属性:
setViewMode()
:设置视图模式(如ListMode