我的QMainWindow
在mainWidget中包含多个带有QGridLayout
的窗口小部件。
当我单击一个按钮时,我想切换到“最小状态”,在这些状态中,只有几个小部件可见,并相应地调整窗口大小。再次单击该按钮,我要恢复小部件的可见性和窗口大小。
为此,我首先单击按钮saveGeometry()
,然后在要隐藏的所有小部件上依次单击setVisible(False)
,然后单击setGeometry(x, y, w, h)
。
要恢复,我先叫setVisible(True)
,然后叫restoreGeometry(g)
。
问题在于,第一次调整大小只是部分调整,我叫setGeometry(0, 0, 320, 80)
,最后在正确位置找到一个窗口,但大小为624x212。请注意,然后可以手动将窗口的大小调整为320x80。
恢复部分工作正常(大小和位置)。
是什么导致无法通过编程方式而不是手动方式调整窗口大小?