在pyqt列表中添加标题

时间:2010-05-01 10:10:32

标签: python qt pyqt pyqt4

我想在pyqt中为列表添加标题和索引,QT列表(qlistwidget,qlistview,qtablewidget,qtreeview)真的不重要

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



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

1 个答案:

答案 0 :(得分:7)

QTableWidget可能是您的最佳选择 - 它使用setHorizontalHeaderLabels()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 ......

有关详细信息,请参阅official documentation