gpt4 book ai didi

python - 获取 QHeaderView 中的标题部分文本

转载 作者:行者123 更新时间:2023-12-01 00:18:04 24 4
gpt4 key购买 nike

我在 QTableWidget 中对 QHeaderView 进行子类化,以提供隐藏/显示部分的自定义功能。有没有办法从标题 View 中获取部分的文本?我知道我可以在表格范围内做到这一点,但这不是我想要做的。

我意识到数据存储在模型内部,但是以下测试仅返回“None”:

self.model().index(0,0).data()

最佳答案

您可以使用分配给 QHeaderView 的模型并使用 headerData() 获取文本方法:

from PyQt5 import QtCore, QtGui, QtWidgets


class HeaderView(QtWidgets.QHeaderView):
def text(self, section):
if isinstance(self.model(), QtCore.QAbstractItemModel):
return self.model().headerData(section, self.orientation())


if __name__ == "__main__":
import sys

app = QtWidgets.QApplication(sys.argv)

w = QtWidgets.QTableWidget(10, 4)
w.setHorizontalHeaderLabels(
["section-{}".format(i) for i in range(w.columnCount())]
)

horizontal_headerview = HeaderView(QtCore.Qt.Horizontal, w)
w.setHorizontalHeader(horizontal_headerview)

print(horizontal_headerview.text(1))

vertical_headerview = HeaderView(QtCore.Qt.Vertical, w)
w.setVerticalHeader(vertical_headerview)

print(vertical_headerview.text(2))

w.show()

sys.exit(app.exec_())

关于python - 获取 QHeaderView 中的标题部分文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59167702/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com