Qt 如何按升序排列ListView项?
我尝试按升序对ListView项目进行排序,因此尝试使用Qt 如何按升序排列ListView项?,qt,sorting,qt4.7,qlistview,qstandarditemmodel,Qt,Sorting,Qt4.7,Qlistview,Qstandarditemmodel,我尝试按升序对ListView项目进行排序,因此尝试使用 Model->sort(int Column, Qt::AscendingOrder) 它工作正常,但我不喜欢Qt::AscendingOrder策略。实际上,该函数首先对以大写字符开头的单词进行排序,然后对以小写字符开头的其他单词进行排序。然后将两个结果连接在一起。 例如: 有没有办法自定义排序策略?请帮我。。。提前谢谢。你可以耍个花招。添加具有相同标签的额外列,但将其转换为小写。将排序应用于此列。使用QSortFilterPr
Model->sort(int Column, Qt::AscendingOrder)
它工作正常,但我不喜欢Qt::AscendingOrder策略。实际上,该函数首先对以大写字符开头的单词进行排序,然后对以小写字符开头的其他单词进行排序。然后将两个结果连接在一起。
例如:
有没有办法自定义排序策略?请帮我。。。提前谢谢。你可以耍个花招。添加具有相同标签的额外列,但将其转换为小写。将排序应用于此列。使用
QSortFilterProxyModel
并设置为Qt::casesensitive
应该可以做到这一点
或者导出自己的模型并重写为什么不编写自己的排序函数呢?嗨。。我尝试使用QSortFilterProxyModel,即使在那之后我也无法排序。o/p保持不变。另一个疑问是QTreeView和QTableView具有setSortingEnabled属性,但是为什么QListView没有这个属性呢?你能用你的代码详细说明一下吗。提前谢谢。
My ListView Items are: apple
Ball
rose
cat
Orange
And i'm getting the output as: Ball
Orange
apple
cat
rose