繁体   English   中英

如何在 PyQt5 中设置 QTableWidget 的单元格样式?

[英]How can I style the cells of a QTableWidget in PyQt5?

我是 Qt 和 PyQt 的新手,想知道如何设置 QTableWidget 的单元格样式。 例如,我想添加一些 etxra 填充。 我尝试像下面的代码一样设置样式表,但它没有任何效果。 我也搜索了互联网,但找不到解决方案。

我使用 PyQT5(Arch Linux 上的 python-pyqt5 5.15.4-1)。

这是我的代码:

import sys

from PyQt5.QtWidgets import QApplication,QMainWindow, QTableWidget, QTableWidgetItem


class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('Table Test')
        table = QTableWidget(self)
        table.setColumnCount(4)
        table.setRowCount(3)
        for j in range(table.rowCount()):
            for k in range(table.columnCount()):
                table.setItem(j, k, QTableWidgetItem("{}{}".format(j, k)))
        self._centralWidget = table
        self.setCentralWidget(self._centralWidget)
        self.resize(500, 200)


def main():
    app = QApplication(sys.argv)
    view = MainWindow()
    view.setStyleSheet("QTableWidget::item {padding: 5px}")
    view.show()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

有人可以帮忙吗?

我自己回答这个问题。 我在上面@musicamante 的评论的帮助下找到了解决方案。

将边距设置为 0 就可以了:

view.setStyleSheet("QTableWidget::item {border: 0px; padding: 5px;}")

现在单元格的内边距为 5px。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM