为什么状态栏statusBar不会跟窗口大小变化


     statusBar = new QStatusBar(this); 
    QGridLayout* layout = new QGridLayout(this);

    statusBar->setGeometry(QRect(0,599 ,760,20));
    layout->addWidget(statusBar);
大佬们,为什么状态栏statusBar还是不会跟窗口大小变化啊

基于Monster 组和GPT的调写:

要重写父窗口的resizeEvent()函数,并在该函数中更新状态栏的大小和位置。


// 在父窗口的构造函数中创建状态栏并添加到布局中
statusBar = new QStatusBar(this);
layout->addWidget(statusBar);

// 重写父窗口的resizeEvent()函数
void MyMainWindow::resizeEvent(QResizeEvent *event)
{
    // 调用父类的resizeEvent()函数,以便正确处理其他内容
    QMainWindow::resizeEvent(event);

    // 获取当前窗口大小并更新状态栏的位置和大小
    QSize size = event->size();
    statusBar->setGeometry(QRect(0, size.height() - 20, size.width(), 20));
}