【发布时间】:2016-03-24 04:02:48
【问题描述】:
我已经搜索了 QT 文档以供参考,但我有一些问题。 这是QT doc中的实现:
bool TableModel::removeRows(int position, int rows, const QModelIndex &index)
{
Q_UNUSED(index);
beginRemoveRows(QModelIndex(), position, position + rows - 1);
for (int row = 0; row < rows; ++row) {
listOfPairs.removeAt(position);
}
endRemoveRows();
return true;
}
我认为它使用 tableview 中的 index.row 来直接定位模型中的数据。但是如果我为 tableview 启用排序呢?排序后,tableview中的索引与model中的数据不对应。 tableview 中的第一行可能是模型中的第三个数据。
如何通过tableview定位模型中的数据? removeRow() 函数有没有更好的实现方式?
【问题讨论】: