我拖放一个表视图小部件(Qt)。填充元素后如何调整大小?

时间:2011-07-25 07:16:58

标签: c++ qt ubuntu qt-creator

我使用的是Ubuntu / c ++语言。

我有以下QTable:

 ui1->tableView_->setVisible(false);
 QStandardItemModel *itemmodel_ = new QStandardItemModel(0,1);
 itemmodel_->setHeaderData(0, Qt::Horizontal, tr("File"));
  ui1->tableView_->setModel(itemmodel_);
//.. add new rows in the table

  ui1->tableView_->resizeColumnsToContents();
              ui1->tableView_->horizontalHeader()->setResizeMode(QHeaderView::ResizeToContents);

  ui1->tableView_plugin->setVisible(true);

运行应用程序后,表格不会调整大小。我哪里错了?如何解决问题?

还有一个问题:如何在按下删除按钮后选择整行以删除它。

欣赏。 THX

1 个答案:

答案 0 :(得分:2)

好像你没有将TableView添加到任何布局中。您需要将其添加到表单中的任何布局。例如:

QVBoxLayout *layout = new QVBoxLayout(this);
layout->addWidget(tableView);

布局是小部件的容器。它的目的是为其小部件添加定位和调整大小规则。例如,QVBoxLayout只是垂直排列小部件。您可以将布局与其他布局组合在一起。因此,您可以更简单地构建复杂的UI设计(具有调整大小支持)。有关详细信息,请查看this documentthis document