qt布局嵌套_QT向界面中嵌套新的界面

简单说下 想要实现的内容

我们有一个主窗口mainwindow,需要向其中放入新的界面,你可以自己定义里面内容。

大致的效果图如下

实现起来就是利用QT的layout布局 使用水平布局QHboxlayout或QVboxLayout

第一步,先进入ui编辑界面,加入一个水平或者垂直的布局(根据自己选则,我用水平)充满整个mainwindow

注意右边我更改了 QHBoxLayout的名称 为pHBoxLayout

然后运行一遍 ;(注意需要运行一遍 要不然类找不到pHBoxLayout 这个布局)

接着定义一个方法(向mainwindow增加窗口的方法) (mainwindow.cpp)

1 void MainWindow::putwidget(QWidget*widget)2 {3 ui->pHBoxLayout->addWidget(widget);4 }

新建一个class文件 定义为myWidget名称 inherent QObject和QWidget

在类名myWidget后面增加 :public QWidget

在myWidget中增加该窗口的背景色 区分其他区域

1 myWidget::myWidget()2 {3 this->setAttribute(Qt::WA_StyledBackground,true);4 this->setStyleSheet("background-color: rgb(255,255, 255)");5 }

在main函数中添加(main.cpp

你可能感兴趣的:(qt布局嵌套)