2

我试图在我的 QTreeWidget 中按数字而不是字母顺序对值进行排序。现在它作为两个字符串进行比较,我需要将它作为两个整数进行比较。

到目前为止我所拥有的:

主窗口.h:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QSql>
//more include...
#include <QTreeWidget>

extern QSqlDatabase db;
//more extern...

namespace Ui {
class mainwindow;
class TreeWidgetItem;
}

class TreeWidgetItem : public QTreeWidgetItem
{
    Q_OBJECT

public:
    TreeWidgetItem(QTreeWidget *tree) : QTreeWidgetItem(tree)  {}
    TreeWidgetItem(QTreeWidget * parent, const QStringList & strings)
                   : QTreeWidgetItem (parent,strings)  {}
    bool operator< (const QTreeWidgetItem &other) const
    {
        int column = treeWidget()->sortColumn();
        return text(column).toInt() < other.text(column).toInt();
    }
};

class mainwindow : public QMainWindow
{
    Q_OBJECT

public:
    //...

但它不起作用,知道我还需要做什么吗?还是我完全关闭了?

4

1 回答 1

0

您是否检查过函数返回的内容(即查看调试器中的值)?我敢打赌,从不同的角度来看,答案会很明显。

于 2013-08-29T02:18:09.380 回答