Russian Qt Forum

Qt => Model-View (MV) => Тема начата: fuCtor от Апрель 22, 2010, 11:57



Название: Не работает сортировка
Отправлено: fuCtor от Апрель 22, 2010, 11:57
Код
C++ (Qt)
#ifndef QvHouseSortModel_h__
#define QvHouseSortModel_h__
 
#include <QSortFilterProxyModel>
#include <QAbstractItemModel>
#include <QVariant>
#include <QString>
 
class QvHouseSortModel : public QSortFilterProxyModel {
Q_OBJECT
QString filterString_;
struct address {
int number;
int sufix;
QString liter;
};
public:
QvHouseSortModel(QObject * parent):QSortFilterProxyModel(parent) {};
~QvHouseSortModel() {};
 
public slots:
void sourcecReset() {
reset();
};
 
protected:
bool lessThan ( const QModelIndex & left, const QModelIndex & right ) const {
 
           // Собственно сортировка
 
           return ret;
 
};
};
#endif // QvHouseSortModel_h__
 
 

Использую так:
Код
C++ (Qt)
houseModel_ = new QSqlQueryModel(this);
QvHouseSortModel* houseSort_ = new QvHouseSortModel(this);
 
houseSort_->setDynamicSortFilter(true);
houseSort_->setSourceModel(houseModel_);
houseList_->setModel(houseSort_);
 

Что делаю не так? Ни в какую не работает сортировка. Ставил точки останова, не попадает на них даже.


Название: Re: Не работает сортировка
Отправлено: Akon от Декабрь 31, 2012, 07:59
Нет вызова QSortFilterProxyModel::sort().