Qt提供了两个树形控件QTreeWidget与QTReeView,可以从源码的角度看看它们的实现,如下:
QTreeWidget
class Q_WIDGETS_EXPORT QTreeWidget : public QTreeView
{
。。。
friend class QTreeModel;
friend class QTreeWidgetItem;
。。。
}
QTreeView
class Q_WIDGETS_EXPORT QTreeView : public QAbstractItemView
由此可知,二者的区别是QTreeWidget面向QTreeWidgetItem,而QTReeView是面向model. QTreeWidget可以做出类似树形表格的效果。
树形控件涉及到Qt的Model/View架构,
例如,下面的demo效果:
各个节点可以设置图标,也可以不用设置.
继承关系
class Q_WIDGETS_EXPORT QTr