PyQt5中QTableView函數講解


如果想熟悉QTableWidget,請參考PyQt5高級界面控件之QTableWidget(四)

 

setSpan(int, int, int, int)
四個參數分別代表,起始行,列,合並的行數,全並的列數,合並的內容為起始行列的內容,如setSpan(1,1,2,2),得到的現象如下:


clearSpans()
清除所有合並的單元格,如下圖:

經過clearSpans()后變成

columnAt(int x_coordinate)->int  
x_coordinate為橫坐標位置,函數返回x_coordnate位置是第幾列,如columnAt(int 150),則返回1,如果x_coordinate超出了表的范圍,返回-1,代表無效列。類似的函數有rowAt(int y_coordinate)

columnCountChanged(int, int)
兩個參數分別代表先前的列數,新的列數
每當添加或刪除列時,都會調用此函數。以前的列數由oldCount指定,新的列數由newCount指定。
columnSpan(int row, int column)
返回在(row, column)單元所占的列數。如下圖columnSpan(1, 1)或者columnSpan(1, 2)都返回2

相似的函數有rowSpan(int row, int column)
columnViewportPosition(int column) -> int
返回column列所對應的坐標系的x值,如columnViewportPosition(1),則返回100

類似的函數有rowViewportPosition(int row)->int
columnWidth(int column)-> int
返回column列的寬度,如columnwidth(1),返回100.
類似的函數有rowHeight(int row), 設置列寬和行高的函數分別為setColumnWidth(int column, int width), setRowHeight(int row, int height)

hideColumn(int column)
隱藏所給的列
類似的函數有hideRow(int row),顯示行和列的函數分別為showRow(int row),showColumn(int column)

horizontalHeader()->QHeaderView
返回表的水平表頭
類似的函數有verticalHeader()->QHeaderView,設置水平表頭和垂直表頭的函數為setHorizontalHeader(QHeaderView header)和setVerticalHeader(QHeaderView header)

horizontalOffset()
此函數不理解
類似的函數有verticalOffset()

indexAt(const QPoint &pos)->QModelIndex
返回pos出的索引

isColumnHidden(int column),isRowHidden(int row)
返回bool值,表示列和行是否處於隱藏狀態

isIndexHidden(const QModelIndex &index)
判斷index索引值處是否處於隱藏狀態

resizeColumnToContents(int column) [slot] 根據內容自動調整某列的列寬
resizeColumnsToContents () [slot]              根據內容自動調整所有列的列寬
resizeRowToContents ( int row ) [slot]        根據內容自動調整某一行的行高
resizeRowsToContents () [slot]                  根據內容自動調整所有行的行高
如下左圖,有時單元格不能完全顯示內容,通過resizeColumnsToContents ()后,變成如下右圖
    
如果通過以上函數不能解決顯示不全的問題,可參數文章QTableView根據內容自動調整大小(resizeColumnToContents解決不了的)

sortByColumn(int column, SortOrder order)
對column進行排序,排序方式由order指定, Qt.DescendingOrder降序,Qt.AscendingOrder升序

sizeHintForColumn(int column)->int 和sizeHintForRow(int row)-> int  
兩個函數的意義不太理解

viewportSizeHint()->QSize
和以上兩個函數一個,不過是同時返回colum和row的大小


原文鏈接:https://blog.csdn.net/qq_34809033/java/article/details/89448860


免責聲明!

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



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