QTableWidget 自定義排序
QTableWidget功能強大,可以在每個格子裏添加自己的wiget部件。
如果想對這些自己添加的widget進行排序有兩種方法。
一種是直接設置每個格子對應的QTableWidgetItem的值,因為QTableWidget默認是據QTableWidgetItem來排序,調用的比較函數是:
bool QTableWidgetItem::operator< ( const QTableWidgetItem & other ) const [virtual]
貌似QTableWidget 是據字符串來排序的。所以設置 QTableWidget 中的text值時要注意。
第二種辦法是從QTableWidget 中派生,重寫比較函數。
把自己寫的派生類添加到QTableWidget中。
void QTableWidget::setItem ( int row, int column, QTableWidgetItem * item )
補充,第二種方法未測試。不過應該可以實現。。
最後更新:2017-04-02 06:51:28