根据代码的执行顺序,vg
是先被添加到ui->horizontalLayout_2
中,然后才添加了m_CurrWhiteBoard
。因此,在布局上,vg
应该位于最下层,而m_CurrWhiteBoard
会覆盖在它上面。
如果您希望将 m_CurrWhiteBoard
放在最底层,可以调整代码如下:
QWidget *vg = new QWidget(this);
ui->horizontalLayout_2->addWidget(vg);
QString imagePath = "E:/YZYEdu/WhiteBoard/img/123.png";
QString styleSheet = QString("background-image: url(%1);").arg(imagePath);
vg->setStyleSheet(styleSheet);
QStackedLayout* stackedLayout = new QStackedLayout();
stackedLayout->addWidget(m_CurrWhiteBoard); // 先添加 m_CurrWhiteBoard
stackedLayout->addWidget(vg); // 再添加 vg
ui->horizontalLayout_2->addLayout(stackedLayout);
这样修改后, m_CurrWhiteBoard
就会在布局上处于最底层。
内容由零声教学AI助手提供,问题来源于学员提问