QTreeview/QTableView自帶排序功能
Qt可通過sortByColumn()實作對QTreeview/QTableView某列的排序
也可通過setSortingEnabled()實作允許使用者點選表頭進行排序
排序預設是對item的内容進行排序
若使用
auto mitem = new QStandardItem("XXXX");
或者
auto mitem = new QStandardItem();
mitem .setText("XXXX");
由于其函數參數特性,會導緻qt預設認為傳入的值為QString類型,就算”XXXX”寫的是數字也是字元串。
但可通過
mitem.setData(12313.223,Qt::EditRole);
實作對數字的傳入,此函數預設參數類型為QVariant,故傳入後view可通過QVariant識别出内容為數字,後進行排序可實作數值内容排序
Techie亮部落格,轉載請注明:Coologic » Qt-QTreeview/QTableView排序問題