1

当我尝试将 QLabel 和 QPushbutton 对象添加到 QVBoxLayout 时,我遇到了问题。问题是,它在它们之间增加了太多的空间,就像图片中一样

样本

这是创建布局和标签并添加它们的代码示例。我稍后会添加按钮,但这只是另一个 ->addWidget(button)。

jobbcimke= new QLabel(trUtf8("Jobb oldal"));
jobbkozepcimke= new QLabel(trUtf8("Jobb part"));
balcimke= new QLabel(trUtf8("Bal oldal"));
balkozepcimke=new QLabel(trUtf8("Bal part"));

jobbfelulet=new QVBoxLayout();
jobbkozepfelulet=new QVBoxLayout();
balkozepfelulet=new QVBoxLayout();
balfelulet=new QVBoxLayout();
osszefogo=new QHBoxLayout();

jobbfelulet->setAlignment(Qt::AlignRight);
jobbkozepfelulet->setAlignment(Qt::AlignRight);
balfelulet->setAlignment(Qt::AlignLeft);
balkozepfelulet->setAlignment(Qt::AlignLeft);

balfelulet->addWidget(balcimke);
balkozepfelulet->addWidget(balkozepcimke);
jobbfelulet->addWidget(jobbcimke);
jobbkozepfelulet->addWidget(jobbkozepcimke);

osszefogo->addLayout(balfelulet);
osszefogo->addLayout(balkozepfelulet);
osszefogo->addLayout(jobbkozepfelulet);
osszefogo->addLayout(jobbfelulet);

setLayout(osszefogo);

我怎样才能删除它们之间的空间,或者有更好的方法来做到这一点?我已经为布局大小分配创建了标签。

4

1 回答 1

1

如果您深入研究文档,有一种setSpacing(int x)方法QLayouts可以让您编辑元素之间的间距,您可能还需要添加一些QSpacerItems以准确定位您想要的位置,或者使用该setGeometry(QRect rect)方法应用约束。

于 2013-03-21T10:46:17.887 回答