QTableWidget列的相对重新调整大小

时间:2013-05-22 14:35:00

标签: qt resize qtablewidget qheaderview qsizepolicy

我在对话框中使用了4-5列的QTableWidget。该对话框是可调整大小的,我希望表格小部件列根据对话框大小调整大小,即如果我增加对话框宽度,最初设置为大宽度的列应比扩展宽度更小的列扩展更多。

简而言之,我希望像column1这样的相对大小调整占据20%,column2占据我的表宽度的50%(随着对话框宽度而增加)等等。

如何在Qt中实现QTableWidget?

任何解决方案,指针或提示都会非常有用。

1 个答案:

答案 0 :(得分:0)

只要在对话框调整大小时更新列宽,就应该这样做。

MyDialog::resizeEvent(QResizeEvent *event) {
  int width = ui->tableWidget->size().width();
  ui->tableWidget->setColumnWidth(0, width * .2);
  ui->tableWidget->setColumnWidth(1, width * .5);
  ...
}

您也可以直接对QTableWidget进行子类化并执行相同的操作。