statusBar = new QStatusBar(this);
QGridLayout* layout = new QGridLayout(this);
statusBar->setGeometry(QRect(0,599 ,760,20));
layout->addWidget(statusBar);
大佬们,为什么状态栏statusBar还是不会跟窗口大小变化啊
要重写父窗口的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));
}