我有一个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(); } };
在这个例子中,它忽略了真实的情况,面对小写模式的字段.