2011-08-02 26 views
1

我正在研究基于窗口大小需要可滚动QGridLayout的GUI。我的解决方案是将其嵌套在QScrollArea中。只要我只是将标准小部件添加到QGridLayout,就可以工作。将QFrame添加到QScrollArea内部的QGridLayout中断滚动

当我切换到添加我的小部件到一个QFrame,然后将该帧添加到网格布局之前,网格布局不再滚动,而只是按需要将网格布局的所有行压扁以包含它们全部。

这是为什么?有没有修复或不同的方式来做到这一点?我应该提到我使用QFrame的唯一原因是将背景(其中包括将小部件添加到网格布局时创建的“单元格”)的背景风格化。

回答

0

如果您的小部件没有通过其size hints and size policies声明合适的最小尺寸,则会发生这种情况。

+0

谢谢,这导致我在正确的方向。为了将来的参考,我简单地在所讨论的帧上使用了.setMinimumSize(width,height)。 –