我sort
在一个QAbstractTableModel
子类中实现。排序本身有效,但视图不会改变,直到我将鼠标悬停在表格本身(即不是标题)上。我怎样才能解决这个问题?起初我以为我也必须发出信号,但找不到合适的信号。
问问题
35 次
1 回答
1
我使用以下代码对项目中的模型进行排序:
void MyModel::organize()
{
if (!cache_ || cache_->empty()) return;
beginResetModel(); // (a)
std::stable_sort(cache_->begin(), cache_->end(), compareRow);
endResetModel(); // (b)
} // end:(MyModel::organize)
(a) 行告诉模型我要重新组织数据,(b) 行告诉模型我已经完成,请刷新相关视图。
您也可以发出dataChanged(index, index);
信号。
于 2013-05-09T01:42:29.527 回答