2012-06-13 48 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);