2012-06-13 45 views
4

使用Qt,我已经设置了一个水平布局的主对话框。此水平布局包含三个垂直布局。我真的希望这些布局中的所有控件能够互相对抗,但我无法让QT删除所有填充和间距。强制删除Qt中的所有水平间距

我已经将所有布局的间距和填充设置为0,并且我使用CSS清除了所有边框,填充和边距。我仍然无法摆脱织物间距。

这里是什么样子的图像:
Controls not pushed together.

至于我能想到的,这些部件应该向上推红线。

+0

只是想大声:如果您已经尝试与布局的一切,你可以确认自己的小部件没有边框?换句话说,布局和小部件实际上互相抵触,但从外观上看,小部件内部有一定的余量。 – cmannett85

+0

这是一个很好的问题。我可以让QPushButton碰到对方,但是标签和列表不会。即使当我将它们的边距,边框和填充设置为零时,CSS也是如此。在删除这些边界时,我可能会错过什么吗? – splodingsocks

+0

小的更新,当我删除布局中的按钮时,似乎列表项之间的边界消失。也许按钮导致奇怪的填充? – splodingsocks

回答

1

你试过

layout->setContentsMargins(0,0,0,0);

...其中布局是一个指针QVBoxLayout,QHBoxLayout,负责,等等?

+0

对不起,我忘了提。我在所有三种布局中都尝试过,并没有任何效果。但也许我错过了一些东西。我会再试一次。感谢您花时间回复。 :) – splodingsocks

0

对于任何类似的问题尝试下列之一

layout->setContentsMargins(0,0,0,0); 
layout->setSpacing(0); 
layout->setMargin(0);