2013-06-27 13 views
1

擴大我有一個小部件層次結構是這樣,有一個框架(以設置按鈕和標籤後面的背景顏色)和水平佈局的直接子。讓QHorizo​​ntalLayout內QFrame

Widget hierarchy

然而,水平佈局(在下面的截圖Qt設計的紅色幀)不佔用在框架內的整個空間。我怎樣才能做到這一點?更改屬性「layoutSizeConstraint」不起作用。標籤已經在水平方向上設置爲「展開」,但仍然保持其大小 - 我可以手動調整水平佈局,但應該自動填充寬度。

Layout not expanded

回答

2

frame框架沒有一個佈局(它顯示其在樹圖標)。這是因爲您已添加新的QHBoxLayout並將其拖入框架中。您應該刪除此佈局,標籤和按鈕拖動到frame,然後打開frame的上下文菜單中選擇‘佈局’選項,並選擇所需的佈局。

+0

這導致我的解決方案。我將佈局保留在框架內,因爲我當然想佈置三個孩子。但我必須右鍵單擊框架並選擇「Lay out」,然後例如「Lay out Horizo​​ntally」。這將在框架周圍添加一個*不可見*佈局,當在*框架*屬性中向下滾動時可以看到該佈局。這對於Qt Designer來說確實很愚蠢。謝謝! – AndiDog

+0

現在實際上你有兩個佈局,一個是不可見的,另一個是在樹中明確顯示的。這沒有什麼壞處,但並不完美。如果你遵循我的建議,你會有一個不可見的佈局。 –

+0

但是,如果我只有一個不可見的佈局作爲框架的父項,我將如何將標籤和按鈕*放置在框架內? – AndiDog

相關問題