1

我正在使用几个小部件,但解决方案不会出现。我所拥有的是一系列的按钮QHBoxLayouts。一些按钮默认是隐藏的,但它们会在需要时出现。为了解决空间问题,所有按钮都有最小和最大尺寸,因此它们看起来总是包装得很好。我也有一个QTextEdit,默认可见,它在一个QVBoxLayout带有QHBoxLayout按钮的

所以问题是这样的:当我隐藏QTextEdit并显示其他按钮时,窗口不会调整大小。搜索后我发现 usingself.ui.layout().setSizeConstraint(QtGui.QLayout.SetFixedSize)可以解决问题,但问题是它从所有小部件中获取最大尺寸,因此我结束了一个巨大的窗口。这样做self.ui.layout().setSizeConstraint(QtGui.QLayout.SetMinAndMaxSize)不会调整窗口大小

我已经尝试过使用self.ui.resize(0,0),并且在执行时self.ui.layout().update()我得到了 False (我觉得很奇怪,http://doc.trolltech.com/4.6/qlayout.html#activate),并且还尝试覆盖sizeHint()但它一直使用最大大小所有小部件。

有没有办法调整窗口大小并同时处理小部件的最小和最大尺寸?

提前致谢

4

1 回答 1

4

答案很蹩脚...只需要更改QVBoxLayoutfor aQGridLayout并使用self.ui.layout().setSizeConstraint(QtGui.QLayout.SetFixedSize)

于 2010-02-19T18:32:11.717 回答