我有一个窗口,它只包含一个组合框,其中包含QVBoxLayout中的多个组框(这些组的内容也没有固定的大小)。那些内部组框是可检查的,取消选中它们会折叠它们(折叠组框的缩小(最大)高度为30px,isFlat == true)。
我想要达到的目标是: 折叠其中一个内部组框时,外部组框和窗口应相应缩小(目前其他未折叠的组框会增大)。但是用户仍然可以调整窗口大小,这会导致组框相应增长:
我正在玩QWidget::setSizePolicy
和QLayout::setSizeConstraint
不同的布局/小部件,但还没有达到令人满意的结果..
什么是实现这一目标的最佳方式?这可以在不实现自己的大小提示函数的情况下完成吗?
答案 0 :(得分:2)
我通过调用
制作了一个似乎具有所需行为的玩具箱adjustSize();
调整内部QGroupBoxes后,在父QGroupBox上。我把它作为一个插槽,所以我可以将它连接到相同的信号,以便方便地调整内部组框的大小。