Qt表最后一列未拉伸以填写父级

时间:2014-11-13 10:30:53

标签: c++ qt user-interface

我正在尝试使用QTableWidget(我也尝试过QTableView)来制作一些数据。我预计最后一列会拉伸并填充父级,但事实并非如此。我在Stackoverflow上找到了几个答案,要求我做以下事情:

QTableWidget* table = new QTableWidget();
QHeaderView* headerView = new QHeaderView(Qt::Horizontal);
table->setWindowTitle(QString::fromUtf8("QTableWidget Header Stretch"));
table->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
table->setColumnCount(2);
table->setRowCount(1);
//Set Header Label Texts Here
table->setHorizontalHeaderLabels(QString("HEADER 1;HEADER 2").split(";"));
table->setItem(0,0,new QTableWidgetItem("CELL 1"));
table->setItem(0,1,new QTableWidgetItem("CELL 2"));
headerView->sectionResizeMode(QHeaderView::Stretch);
//add the stretch here
headerView->stretchLastSection();
table->setHorizontalHeader(headerView);
table->show();

然而,从下图可以看出,它仍然没有伸展,

enter image description here

知道我该怎么做?我猜大多数答案都与Qt 4有关,我使用的是Qt 5。

1 个答案:

答案 0 :(得分:2)

你可能想要:

headerView->setStretchLastSection(true);