向 pyqt 列表添加标题

发布于 2024-08-31 15:15:04 字数 197 浏览 8 评论 0原文

我想向 pyqt 中的列表添加标题和索引,QT 的列表(qlistwidget、qlistview、qtablewidget、qtreeview)实际上并不重要

简而言之..我想要类似于 pyqt 演示中的旋转框委托示例的东西... 但我想要一个字符串,而不是列标题中的索引...



希望这个想法足够清楚
提前致谢

i want to add a headers and index to a list in pyqt , it's really not important what list of QT (qlistwidget , qlistview , qtablewidget, qtreeview)

in short .. i want something like the spin box delegate example in the pyqt demo ...
but instead of the index in the column headers i want a strings ...

hope the idea is clear enough

thanx in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天涯沦落人 2024-09-07 15:15:04

QTableWidget 可能是您的最佳选择 - 它使用 setHorizo​​ntalHeaderLabels()setVerticalHeaderLabels() 来让您控制两个轴。

from PyQt4 import QtGui

class MyWindow(QtGui.QMainWindow):

    def __init__(self, parent):
        QtGui.QMainWindow.__init__(self, parent)

        table = QtGui.QTableWidget(3, 3, self)  # create 3x3 table
        table.setHorizontalHeaderLabels(('Col 1', 'Col 2', 'Col 3'))
        table.setVerticalHeaderLabels(('Row 1', 'Row 2', 'Row 3'))
        for column in range(3):
            for row in range(3):
                table.setItem(row, column, QtGui.QWidget(self))  # your contents

        self.setCentralWidget(table)
        self.show()

当然,如果您想完全控制标题的内容和格式,那么您可以使用 .setHorizo​​ntalHeaderItem() 和 .setVerticalHeaderItem() 方法为每个标题定义一个 QTableWidgetItem...

请参阅 官方文档了解完整详细信息。

QTableWidget is likely your best choice - it uses setHorizontalHeaderLabels() and setVerticalHeaderLabels() to let you control both axes.

from PyQt4 import QtGui

class MyWindow(QtGui.QMainWindow):

    def __init__(self, parent):
        QtGui.QMainWindow.__init__(self, parent)

        table = QtGui.QTableWidget(3, 3, self)  # create 3x3 table
        table.setHorizontalHeaderLabels(('Col 1', 'Col 2', 'Col 3'))
        table.setVerticalHeaderLabels(('Row 1', 'Row 2', 'Row 3'))
        for column in range(3):
            for row in range(3):
                table.setItem(row, column, QtGui.QWidget(self))  # your contents

        self.setCentralWidget(table)
        self.show()

Of course, if you want full control over the contents and formatting of the headers, then you could use the .setHorizontalHeaderItem() and .setVerticalHeaderItem() methods to define a QTableWidgetItem for each header...

See the official documentation for full details.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文