在MV架构中,Qt提供了三个可以直接使用的视图类用于呈现模板中的数据,分别是QListView,QTableView和QTreeView。不过还没完,紧接着Qt又提供了基于这三个类设计的更方便的类,分别是QListWidget,QTableWidget,QTreeWidget。
这三个类分别继承于上述三个视图类,实现了基本的函数,可以实现添加和删除等基本的功能,同时它们使用内部的model来管理每一个元素,无需我们对model进行设置。如果需要对编辑进行限制,我们可以在自定义Delegate类,这也正是model/view架构的基本框架。
QListWidget类是一个列表组件,内部的数据以列表的形式呈现出来。列表中每一个元素都是一个QListWidgetItem类。
QTableWidget类是一个表格组件,内部的数据以表格的形式呈现出来。表格中每一个元素都是一个QTableWidgetItem类。
QTreeWidget类是一个树组件,内部的数据以树的形式呈现出来。树中的每一个元素都是一个QTreeWidgetItem类。
向这三个类中添加元素的方法类似。
#include "mywidget.h"
#include <QStringListModel>
#include <QStringList>
#include <QListWidget>
#include <QTableWidget>
#include <QTreeWidget>
#include <QTableWidgetItem>
#include <QListWidgetItem>
#include <QTreeWidgetItem>
#inc