我有一個 QTableWidget,我用來自 SQL 的資料填充 - 我啟用了重新排序視圖中的列
self.horizontalHeader().setSectionsMovable(True)
為了給用戶完美的體驗,我創建了很多代碼,用戶可以通過兩個串列框來決定他想看到哪一列,一個顯示表中已經可見的標題,另一個顯示 SQL 表可能的所有標題. 用戶可以左右切換列并使其可見或不可見。用戶還可以上下放置串列中的元素以重新排序列中的標題。對于可見列串列,我必須在 TableWidget 中獲得一個包含所有可見標題的串列 - 但我只有一個問題:當用戶將像“ID”這樣的標題拖到第一個位置時
例子
我想在for回圈中獲取所有標題作為串列,
header = self.horizontalHeaderItem(column).text()
將“USERNAME”作為第一列(位置 0),將“ID”作為最后一列(位置 3)。還
header = self.horizontalHeader().model().headerData(0,Qt.Orientation.Horizontal)
沒區別。。
有人有想法嗎?
uj5u.com熱心網友回復:
您必須使用邏輯索引進行迭代
header = self.horizontalHeader()
for col in range(self.columnCount()):
print(self.horizontalHeaderItem(header.logicalIndex(col)).text())
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/464926.html
標籤:qt pyqt pyqt5 qtableview qtablewidget
上一篇:缺少PyQt5二進制檔案
下一篇:如何在主視窗中創建QT登錄頁面?
