我在Qt中遇到布局问题。我正在尝试编译此代码,具有2个水平布局和垂直主布局。每个水平布局都有3个按钮,两个水平布局都包含在垂直布局中。但是在编译完这段代码之后,我只能看到一个只有“退出”按钮的小窗口。
firstline = new QHBoxLayout(this);
secondline = new QHBoxLayout(this);
layout = new QVBoxLayout(this);
eat = new QPushButton("Eat", this);
drink = new QPushButton("Drink", this);
smoke = new QPushButton("Smoke", this);
save = new QPushButton("Save", this);
load = new QPushButton("Load", this);
exit = new QPushButton("Exit", this);
firstline->addWidget(eat);
firstline->addWidget(drink);
firstline->addWidget(smoke);
secondline->addWidget(save);
secondline->addWidget(load);
secondline->addWidget(exit);
layout->addLayout(firstline);
layout->addLayout(secondline);
setLayout(layout);
答案 0 :(得分:4)
您已经通过这些陈述设置了对话框的布局......
firstline = new QHBoxLayout(this);
secondline = new QHBoxLayout(this);
所以调用它们的构造函数而不指定它们的父窗口小部件。
firstline = new QHBoxLayout();
secondline = new QHBoxLayout();
这会按照您的预期显示您的布局。