我想学习如何手动创建GUI而不使用设计工具。我尝试将布局添加到我的
MainWindow
,但在运行时它显示:
QWidget::setLayout: 尝试在MainWindow""上设置QLayout"",该窗口已经有了一个布局
这是我的代码:
//Header
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
private:
QHBoxLayout *layout;
};
//Constructor in my *.cpp
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
layout = new QHBoxLayout;
this->setLayout(layout);
}
//The usual main function
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
出了什么问题?我按照书上的做法,甚至在网上查找了一些非常难找到的代码,但仍然无法添加布局到我的窗口。