在Qt docs http://doc.qt.io/qt-5/model-view-programming.html#model-subclassing-reference中,它说,如果您的模型是可排序的,即,如果它重新实现了QAbstractItemModel::sort()
函数,QTableView
和{{1}提供一个API,允许您以编程方式对模型数据进行排序。此外,您可以通过将QTreeView
连接到QHeaderView::sortIndicatorChanged() signal
或QTableView::sortByColumn() slot
来启用交互式排序(即允许用户通过点击视图标题对数据进行排序) , 分别。但是,QTreeView::sortByColumn() slot
不是Qt 5.4中QTreeView::sortByColumn()
中的一个广告位。有什么问题吗? Src / qtbase / src / widgets / itemviews / qtreeview.h 中的源代码显示了这一点。
答案 0 :(得分:0)
QTreeView::sortByColumn
之前没有一个广告位:http://qt-project.org/doc/qt-4.8-snapshot/qtreeview.html#sortByColumn
QTreeView::sortByColumn
现在不是一个插槽:http://doc.qt.io/qt-5/qtreeview.html#sortByColumn
没有什么"错误"有了这个实现。 Qt 5 QTreeView的行为与Qt 4 QTreeView的行为完全相同sortByColumn
。