如何排序QTableView列

 我来答
匿名用户
2017-06-06
展开全部
1、通常情况下,我们都是对QTableView的Item的text进行排序的(Qt::DisplayRole),实际上还可以对其他内容进行排序(参考enum Qt::ItemDataRole)

2、默认情况下,Item的排序是按照字符串的方式来排序的,这就是为什么我们看到排序结果类似于: ("100","20","3","400")。

3、通过追看QT(4.6.1)的源代码,发现QTableView的排序函数sortByColumn根源在QAbstractItemModel,但其中的排序函数什么都没做,实际上还是在"QStandardItemModel::sort(int column, Qt::SortOrder order)"中实现的,排序函数有依赖于 "bool QStandardItem::operator<(const QStandardItem &other) const"。上面引号中内容都在"/qt-everywhere-opensource-src-4.6.1/src/gui/itemviewsqstandarditemmodel.cpp"中。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式