当我尝试将 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);
我怎样才能去掉它们之间的空格,或者有更好的方法吗?我已经为布局尺寸分配创建了标签。
如果您深入研究文档,QLayouts
有一个setSpacing(int x)
方法,它允许您编辑元素之间的间距,您可能还需要添加一些 QSpacerItems
以准确定位您想要的位置,或使用 setGeometry(QRect rect)
方法应用约束。
我是一名优秀的程序员,十分优秀!