Qt 文档中有一个非常简单的树模型示例。我加了一行
view.setSortingEnabled(true);
在main.cpp
启用树视图排序。当我运行它时,我在标题中看到一个排序指示器。但是,无论我如何单击标题,项目都不会排序。有什么我忽略的吗?
在您的视图中使用QSortFilterProxyModel 。
视图的sortingEnabled
属性启用视图中的排序按钮。然而,实际的排序需要在模型的sort()方法中实现。
像这样使用 QSortFilterProxyModel:
QSortFilterProxyModel* pProxyModel = new QSortFilterProxyModel(pView);
pProxyModel->setSourceModel(pModel);
pView->setModel(pMdl);
pView->setSortingEnabled(true);