對以上節的排序,我們衍伸了兩點:
把一個字元串前面的資料按照字元串比較,而後面的資料按照整形比較。
将整形顯示為字元串,而排序依然正常呢。
為了分别描述,這裡我們先解決問題1。
<a href="#%e7%ae%80%e8%bf%b0">簡述</a>
<a href="#%e6%95%88%e6%9e%9c">效果</a>
<a href="#%e5%a4%84%e7%90%86%e5%a4%a7%e5%b0%8f%e6%98%be%e7%a4%ba">處理大小顯示</a>
<a href="#qabstracttablemodel">qabstracttablemodel</a>
<a href="#qsortfilterproxymodel">qsortfilterproxymodel</a>
<a href="#%e6%8f%90%e7%a4%ba">提示</a>
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwQDMxEDOwkTMyAzMwYTMwIzLcRXZu5ibkN3Yuc2bsJmLn1Wavw1LcpDc0RHaiojIsJye.jpg)
這裡隻修改了一行代碼,其它代碼和上節相同。
qsortfilterproxymodel是用來排序和過濾的,不能單獨使用,它隻是一個“代理”,真正的資料需要qabstracttablemodel提供,可以重寫lessthan來實作自己的排序算法。
效果圖中,隻針對名稱自定義排序了,大小隻進行了轉換,還尚未排序,因為存在多種解決方案,下節我會将方案一一列出,然後進行對比。