How to make QTableWidget's columns assume the

2019-02-21 16:53发布

问题:

The columns of my QTableWidget do not fill in the space of the table, so that an empty space is left on the right hand-side. How to make the columns of my QTableWidget assume the maximum space so as to fill in this space?

回答1:

The headers of the table have methods for controlling this:

header = table.horizontalHeader()
header.setStretchLastSection(True)

or:

header.setResizeMode(QHeaderView.Stretch)


回答2:

I don't know of any method to set this property to the QTableWidget's content. However, I could use the following to get the columns to resize:

def resizeEvent(self, event):
    self.setColumnWidth(0, event.size().width())

This resizes the first column only. To resize all columns, one should get all children item and apply column width / number of items.