5

QTableview でカスタム ヘッダー名を設定する方法を知りたい

QTableview を作成すると、列と行のヘッダー名が 1,2,3,4 になります。独自の列とヘッダーのタイトルを設定する方法を知りたいです。


必要に応じて解決策を得ました。同じ状況に遭遇した人の助けになることを願っています

4

2 に答える 2

15

独自のモデルでを使用している場合は、モデルにメソッドQTableViewを実装しheaderData()て、ヘッダーのデータを返す必要があります。列見出しのみを表示するスニペットを次に示しheader_labelsます。値を変更してヘッダー テキストを変更します。

class TableModel(QAbstractTableModel):

    header_labels = ['Column 1', 'Column 2', 'Column 3', 'Column 4']

    def __init__(self, parent=None):
        QAbstractTableModel.__init__(self, parent)

    def headerData(self, section, orientation, role=Qt.DisplayRole):
        if role == Qt.DisplayRole and orientation == Qt.Horizontal:
            return self.header_labels[section]
        return QAbstractTableModel.headerData(self, section, orientation, role)
于 2013-01-04T10:01:07.400 に答える