如何启用/禁用QTableWidget的水平/垂直头部?

15 投票
3 回答
22876 浏览
提问于 2025-04-17 16:05

如果我在Qt Designer里把horizontalHeaderVisible或者verticalHeaderVisible这个属性设置为false,那就没问题了。但是我想知道,怎么在我的代码里开启或关闭这些表头呢?我试过这样做:

self.ui.tblContents.horizontalHeaderVisible = False

3 个回答

4

谢谢你。这在PyQt5中对我来说非常有效。

这里有一些截图,方便大家理解,如果有点困惑的话。

竖着的(用于行号)被禁用了:

self.tableView = QTableView()
self.tableView.verticalHeader().setVisible(False)

在这里输入图片描述

横着的被禁用了:

self.tableView = QTableView()
self.tableView.horizontalHeader().setVisible(False)

在这里输入图片描述

同时禁用了竖着和横着的标题。

self.tableView = QTableView()
self.tableView.verticalHeader().setVisible(False)
self.tableView.horizontalHeader().setVisible(False)

在这里输入图片描述

10

如果你想在Python37的PyQt5中使用QTableWidget()来实现这个功能,下面是隐藏垂直和水平标题的步骤:

首先,初始化这个小部件,我提到这个是为了让你更容易找到:

self.tableWidget = QTableWidget() 

步骤:

隐藏水平标题

self.tableWidget.horizontalHeader().setVisible(False)

隐藏垂直标题

self.tableWidget.verticalHeader().setVisible(False)
23

你可以获取到头部信息,然后使用 .hide()(或者 .setVisible(False))来隐藏它:

self.ui.tblContents.horizontalHeader().hide()
# or
# self.ui.tblContents.horizontalHeader().setVisible(False)

self.ui.tblContents.verticalHeader().hide()
# or
# self.ui.tblContents.verticalHeader().setVisible(False)

撰写回答