PyQt學習隨筆:QTableWidget水平表頭horizontalHeader、豎直表頭verticalHeader的相關操作方法


QTableWidget表格部件的表頭包括水平表頭和豎直表頭,水平表頭每節對應表格的一列,豎直表頭對應表格的一行。如圖:
在這里插入圖片描述
上圖中的“行”+編號的項就是豎直表頭的一個項(也稱為1節),“列”+編號的項就是水平表頭的一個項(節)。

1、設置水平表頭的setHorizontalHeaderLabels方法

setHorizontalHeaderLabels用於一次性順序設置水平表頭多個節顯示的文本,調用語法如下:

setHorizontalHeaderLabels( Iterable[str] labels)

注意:
  • 該方法無返回值
  • 該方法設置的多個節是按第0節開始的邏輯順序設置,不論中間是否出現隱藏節或交換節或者是否已設置標簽
  • 如果標簽列表超出實際表頭節數將忽略多出的,前面的按給定順序設置
  • 如果標簽列表少於實際表頭節數也能設置前面對應節數的標簽
  • 設置了標簽的節自動會創建該節對應的項

2、設置豎直表頭的setVerticalHeaderLabels

setVerticalHeaderLabels用於一次性順序設置豎直表頭多個節顯示的文本,調用語法如下:
setVerticalHeaderLabels( Iterable[str] labels)

其他的方面與setHorizontalHeaderLabels方法相同。

3、訪問水平節對應項

前面介紹了,表頭的一個節實際上對應一個項,項的類型與表格部件的項類型相同,都是QTableWidgetItem實例對象。水平節對應項可以通過方法horizontalHeaderItem和setHorizontalHeaderItem方法訪問,調用語法如下:

  • QTableWidgetItem horizontalHeaderItem(int column)
  • setHorizontalHeaderItem(int column, QTableWidgetItem item)
注:
  1. column參數對應水平表頭節的序號,從0開始,其數值必須小於表格部件的總列數,否則設置調用無效,查詢返回None;
  2. 調用setHorizontalHeaderItem將替換原有節對應的項,標簽顯示為項的文本;
  3. 如果一個節沒有設置標簽也沒有通過setHorizontalHeaderItem設置項,則對應表頭節沒有對應項。

4、訪問豎直節對應項

類似setHorizontalHeaderItem,QTableWidget提供了verticalHeaderItem、setVerticalHeaderItem方法,調用語法如下:

  • QTableWidgetItem verticalHeaderItem(int row)
  • setVerticalHeaderItem(int row, QTableWidgetItem item)

相關方法使用與訪問水平節類似,在此不重復說明。

5、從表頭節中取下節對應項

QTableWidget可以取下表頭節對應項並返回,相關方法如下:

  • QTableWidgetItem takeHorizontalHeaderItem(int column)
  • QTableWidgetItem takeVerticalHeaderItem(int row)

對應節的項被取下后,表頭對應節的標簽將自動變更為節的序號。

6、表頭屬性相關訪問方法

在Designer中,QTableWidget有如下表頭屬性可以設置:
在這里插入圖片描述
相關屬性是從QTableView繼承過來的,相關訪問方法請參考《PyQt(Python+Qt)學習隨筆:QTableView的標題表頭相關屬性》。

老猿Python,跟老猿學Python!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM