要使主窗口在启动时最大化,可以使用 showMaximized()
方法。下面是修改后的代码,确保主窗口在启动时最大化:
#include <QApplication>
#include <QWidget>
#include <QHBoxLayout>
#include <QFrame>
#include <QScrollArea>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
// 创建主窗口
QWidget mainWindow;
mainWindow.setWindowTitle("显示窗口");
// 设置主窗口最大化
mainWindow.showMaximized();
// 创建水平布局
QHBoxLayout *layout = new QHBoxLayout(&mainWindow);
layout->setContentsMargins(0, 0, 0, 0); // 设置布局边距为零
layout->setSpacing(0); // 设置间距为零
// 创建左边子窗口
QFrame *leftFrame = new QFrame();
leftFrame->setFixedWidth(200); // 左侧固定宽度
leftFrame->setStyleSheet("background-color: green;");
// 创建右边的巨型画布(作为框架)
QFrame *canvasFrame = new QFrame();
canvasFrame->setFixedSize(50000, 1500); // 巨型画布大小
canvasFrame->setStyleSheet("background-color: black;");
// 将画布放入滚动区域中
QScrollArea *scrollArea = new QScrollArea();
scrollArea->setWidget(canvasFrame);
scrollArea->setWidgetResizable(true); // 自适应尺寸
scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
// 将子窗口添加到布局中
layout->addWidget(leftFrame);
layout->addWidget(scrollArea);
// 显示主窗口
mainWindow.show();
return app.exec();
}
更新说明:
mainWindow.showMaximized();
:在创建主窗口之后调用此方法,以便在启动时将其最大化。
这样,当你运行程序时,主窗口将自动以最大化状态显示。
内容由零声教学AI助手提供,问题来源于学员提问