在此應用程序中,會生成HBoxLayouts列表並將其放入VBoxLayout中,以便形成動態填充的命令列表。每個子列表上方都有一個按鈕,可以隱藏其下方的控件。問題是:當子列表被隱藏時,包含最寬VBoxLayout的小部件的大小不會改變! VBoxLayout然後伸展補償。我希望容器小部件在包含較少項目時收縮! 它看起來像這樣:當內容部分隱藏時,在運行時調整包含QVBoxLayout的QWidget的大小
問題是,當我在其中一個PushButton下隱藏列表時,包含的小部件不會收縮!當有不太明顯的項目:(
這裏是我怎麼看我的小GUI畫面的VBoxLayout只是擴大
下面是從更廣泛的佈局設置一些代碼:
scrollArea = new QScrollArea(this);
scrollAreaLayoutWidget = new QWidget(scrollArea);
scrollAreaLayout = new QVBoxLayout(scrollAreaLayoutWidget);
//scrollAreaLayout is filled with all the stuff you see inside the scroll area...
scrollArea->setWidget(scrollAreaLayoutWidget);
我試圖用很多方法來改變容器小部件的QSizePolicy(藍框),我發現了幾十個調整大小的問題,但我不知道怎麼回答。是否有一個我失蹤的神奇的自動調整大小設置? 讓我知道,如果這是痛苦的模糊或不完整。 歡迎任何評論!
可能的重複[如何自動調整QDialog的大小取決於它的一個孩子的文本長度?](http://stackoverflow.com/questions/1675499/how-do-i-auto - 調節 - 該尺寸對的一-QDialog的-取決於 - 上的文本長度的酮O) – Trilarion 2014-06-17 11:04:56