linux – 是否可以在QTreeWidget列中对数字进行排序?

前端之家收集整理的这篇文章主要介绍了linux – 是否可以在QTreeWidget列中对数字进行排序?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个QTreeWidget,列中填充了一些数字,我该如何对它们进行排序?

如果我使用setSortingEnabled(true);我只能正确排序字符串,所以我的列被排序:

1
10
100
2
20
200

但这不是我想要的!
建议?

解决方法

您可以排序覆盖<操作符和改变这样的排序控制.
class TreeWidgetItem : public QTreeWidgetItem {
  public:
  TreeWidgetItem(QTreeWidget* parent):QTreeWidgetItem(parent){}
  private:
  bool operator<(const QTreeWidgetItem &other)const {
     int column = treeWidget()->sortColumn();
     return text(column).toLower() < other.text(column).toLower();
  }
};

在这个例子中,它忽略了真实的情况,面对小写模式的字段.

猜你在找的Linux相关文章