问题现象
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
resize(800, 600);
//
QPushButton *btnStart = new QPushButton(this);
btnStart->setText(“start”);
QPushButton *btnStop = new QPushButton(this);
btnStop->setText(“stop”);
//
QHBoxLayout *layout = new QHBoxLayout(this);
layout->setSpacing(50);
layout->addWidget(btnStart);
layout->addWidget(btnStop);
//
setLayout(layout);
}
设置space为50后,不起作用,两个按钮依然重合。
原因分析
MainWindow父类为QMainWindow,在QMainWindow及其子类中使用layout不起作用。
解决办法
将MainWindow父类改为QWidget或QDialog。