我有一个QScrollArea小部件,它开始为空;
它有一个垂直布局,带有一个 QGridLayout 和一个垂直间隔以将其保持在顶部,并防止它延伸到整个滚动区域;
在程序的其他地方,有一个 QTextEdit,它在更改时会扫描其内容以查找“物种”元素,然后将它们添加到 QGridLayout。任何已被移除的物种元素也会被移除。这一点有效;
我一直打开垂直滚动条,这样当它出现时它就不会位于其他东西的顶部。请注意,尽管不需要,滚动条已经比滚动框大。
这就是问题。滚动区域似乎是预设的,我无法更改它。如果我向 QGridLayout 添加更多行,则滚动区域的大小不会增加。
相反,它保持相同的大小,并挤压 QGridLayout,使其看起来很丑(起初);
然后在添加更多之后它变得无法使用;
请注意,滚动条的大小仍与之前的图像相同。前两张图片来自 Qt Designer,后三张来自正在运行的程序。
如果我调整窗口大小以使 QScrollArea 增长,那么我会看到:
表示滚动区域内的某些布局未正确调整大小。
我的问题是;当我从 QGridLayout 添加和删除时,我需要做什么才能使小部件的可滚动区域动态调整大小?