【发布时间】:2014-09-06 21:58:41
【问题描述】:
我正在使用 QTableView 和 QAbstractTableModel。 即使在过滤和排序之后,我也可以在垂直标题中获得有序的行号吗?
【问题讨论】:
-
请post code,你是怎么排序的?
-
尝试使用任何 QSortFilterProxyModel 并获得有序的连续行号
我正在使用 QTableView 和 QAbstractTableModel。 即使在过滤和排序之后,我也可以在垂直标题中获得有序的行号吗?
【问题讨论】:
解决方法是在MySortFilterProxyModel中重新实现headerData:
QVariant MySortFilterProxyModel::headerData(int section, Qt::Orientation orientation, int role) const
{
if(role == Qt::DisplayRole && orientation == Qt::Vertical)
return section + 1;
else
return sourceModel()->headerData(section, orientation, role);
}
【讨论】:
这样就够了:
QVariant MySortFilterProxyModel::headerData(int section, Qt::Orientation orientation, int role) const {
return sourceModel()->headerData(section, orientation, role);
}
你可以参考Qt文档here
【讨论】: