如何以编程方式将QMainWindow调整为最小大小

sas*_*alm 5 c++ qt resize qt-creator qlayout

当我有一个带有网格布局的QMainWindow时,当用鼠标调整它的大小时,它将不会低于其中所有控件正确显示所需的最小尺寸.在我的应用程序中,我有时以编程方式隐藏控件,但随后窗口保持相同的大小,其余控件看起来分散,它们之间的空间太大.我最终手动调整对话框的大小,因此看起来并不难看.

我可以以编程方式将对话框的垂直大小设置为我在隐藏控件后手动调整大小时得到的最小值吗?

sas*_*alm 0

这段代码可以解决这个问题(它只调整高度):

    QWidget widget;
    widget.resize(widget.width(), widget.minimumHeight());
Run Code Online (Sandbox Code Playgroud)