2010-02-19 83 views
0

我正在使用几个小部件,但解决方案不会出来。我所拥有的是QHBoxLayouts系列中的一系列按钮。有些按钮默认隐藏,但会在需要时显示。为了解决空间问题,所有按钮都有最小和最大尺寸,因此它们总是看起来很好打包。另外我有一个QTextEdit,默认情况下,这是在与持有的按钮PyQt4:隐藏小部件和调整窗口

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

我已经尝试过使用self.ui.resize(0,0),并做了self.ui.layout().update()当我假(我觉得奇怪,http://doc.trolltech.com/4.6/qlayout.html#activate),并且还试图重写sizeHint()但它一直使用的最大尺寸为所有小部件。

有没有办法调整窗口大小,同时照顾一个小部件的最小和最大尺寸?提前

+0

你可以张贴的代码,或至少一个片段?如果我能够看到它,我认为这会更容易理解并尝试诊断此问题。 – swanson 2010-02-19 02:38:18

+0

因为我使用的是uic模块,并且原始源代码有很多依赖关系,所以我发布了相关的窗口代码http://pastebin.com/f1544ffdb(这是很少的)和uic文件http:// pastebin.com/f65684099。另外一些截图http://www.flickr.com/photos/[email protected]/sets/72157623339593841/ – masterLoki 2010-02-19 03:41:42

回答

3

答案

由于是相当蹩脚的...只是需要改变QVBoxLayoutQGridLayout和使用self.ui.layout().setSizeConstraint(QtGui.QLayout.SetFixedSize)

+1

你可以接受你的答案,这样你的问题就不会出现在“未回答的问题”列表中。 – 2010-07-20 15:10:10

相关问题