2012-03-23 3 views
1

QTableView 또는 모델에 대한 사용자 지정 정렬 방법을 어떻게 설정할 수 있습니까? (어떤 기능을 다시 구현해야합니까?)QTableView의 사용자 지정 정렬 방법은 무엇입니까?

기본 정렬 알고리즘은 문자열을위한 것이며 일부 특정 열에 대해 숫자 정렬 방법을 원합니다.

감사합니다.

답변

3

QSortFilterProxyModel을 사용해야합니다. LessThan 메소드를 다시 구현해야합니다. 그런 다음 프록시 모델 sourceModel을 설정해야하고,보기위한 모델로 프록시 모델을 설정

class MyProxyModel: public QSortFilterProxyModel 
{ 
protected: 
    bool lessThan (const QModelIndex & left, const QModelIndex & right) const 
    { 
     // your sorting rules 
    } 
}; 

// ... somewhere where your view is accessible 
MyProxyModel * m = new MyProxyModel(); 
m->setSourceModel(yourModel); 
yourView->setModel(m); 
+0

그것은 QTableWidget에 적용 할 수 있습니까? – swdev

관련 문제