C++ 调整包含QTableView的QMainWindow的大小

C++ 调整包含QTableView的QMainWindow的大小,c++,qt,C++,Qt,我正在尝试使用Qt创建一个UI,其中我的主窗口只有一个QTableView。我的QTableView有固定数量的列和非固定数量的行 我想让我的主窗口完全打开,显示我的QTableView,并在主窗口宽度改变时调整QTableView宽度(或者如果无法调整大小,则调整主窗口宽度) 对于高度,我只希望在主窗口不足以完全显示QTableView内容时使用滚动条 我在Qt论坛/博客和stackoverflow上搜索了答案,但没有找到我想要的答案 以下是我目前的代码: MainWindow.h: clas

我正在尝试使用Qt创建一个UI,其中我的主窗口只有一个QTableView。我的QTableView有固定数量的列和非固定数量的行

我想让我的主窗口完全打开,显示我的QTableView,并在主窗口宽度改变时调整QTableView宽度(或者如果无法调整大小,则调整主窗口宽度)

对于高度,我只希望在主窗口不足以完全显示QTableView内容时使用滚动条

我在Qt论坛/博客和stackoverflow上搜索了答案,但没有找到我想要的答案

以下是我目前的代码:

MainWindow.h:

class MainWindow : public QMainWindow
{
    Q_OBJECT
public:
    explicit MainWindow(QWidget *parent = nullptr);

private:
    void createMenuBar();

    QTableView myTable;
};
MainWindow.cpp:

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
    setWindowTitle(tr("app_name %1").arg(APP_VERSION));
    createMenuBar();

    auto centralWidget = new QWidget();
    setCentralWidget(centralWidget);

    auto baseLayout = new QVBoxLayout(centralWidget);
    baseLayout->addWidget(&myTable);
    baseLayout->setSizeConstraint(QLayout::SetMinimumSize);

    variablesTable.setModel(new myModel());

    centralWidget->setBaseSize(myTable.minimumSize());
    centralWidget->resize(myTable.width(), 720);
}

void MainWindow::createMenuBar()
{
    QMenu *fileMenu = menuBar()->addMenu(tr("File"));
    fileMenu->addSeparator();

    QMenu *aboutMenu = menuBar()->addMenu(tr("About"));
    aboutMenu->addSeparator();
}