Loading... # 引言 QTableWidget 表头排序是根据字符串进行排序,如果这个列中只有数字,就变成了这样的了。 ![image.png](https://www.zunmx.top/usr/uploads/2023/05/3185244345.png) # 解决方案 重写QTableWidgetItem类 ```c++ class Item: public QTableWidgetItem { public: Item(QString str){ this->setText(str); } bool operator< (const QTableWidgetItem &other) const { return (this->text().toInt() < other.text().toInt()); } }; ``` 调用时 ```c++ new Item(QString("%1").arg(staticData[row].getCount()))); ``` 如果是字符串类型,就用原始的类,不要用重写的这个类,不然会排序失败的。 ![image.png](https://www.zunmx.top/usr/uploads/2023/05/662372960.png) © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏