qt 中 ,在QMainWindow 手动添加layout,无法显示layout 中控件的解决办法。

方法1,删除centralWidget后,添加手动部分内容。

    left = new QPushButton("killin kind");
right = new QPushButton("Emma");
    if(this->centralWidget())    {
       delete this->centralWidget();
    }   else    {    }
    QHBoxLayout *hLayout= new QHBoxLayout;
QWidget *cWidget = new QWidget(this);
this->setCentralWidget(cWidget);
    hLayout->addWidget(left);
hLayout->addWidget(right);
hLayout->addWidget(labelPos);
cWidget->setLayout(hLayout);
2.就是直接使用这个窗口内部的Layout对象
this->layout()->addWidget(left);


posted on 2022-01-09 13:07  yangjunhe  阅读(795)  评论(0编辑  收藏  举报