在运行时调整QDialog的大小

Mik*_*mka 6 user-interface qt resize qdialog qsizepolicy

我有一个QDialog子类,包含我的应用程序的一些选项.有些选项是核心的,另一些是高级的,所以我决定将它们放入separeted可检查的QGroupBox中. 在此输入图像描述
当用户选中高级选项框时,我希望我的对话框缩小垂直,但我找不到正确的方法 - 对话框大小保持不变 在此输入图像描述
我将对话框的大小策略设置为Expanding,尝试调用adjustSize()并尝试调用resize()方法 - 没有任何帮助.我无法将programmaticaly对话框调整为小于当前大小(它只能变大).同时,可以手动调整大小. 在此输入图像描述
有谁能够帮我?

Zla*_*mir 10

如果您不需要手动调整大小,可以添加

layout()->setSizeConstraint(QLayout::SetFixedSize);
Run Code Online (Sandbox Code Playgroud)

到对话框构造函数,然后布局接管在显示或隐藏窗口小部件时自动调整大小的责任.