在QtDesigner中,我创建了带水平布局的QFrame(layoutSpacing为5)。其中有3个QLineEdit小部件,其中固定尺寸和水平间隔尺寸扩大(所以当改变框架尺寸时,只改变间隔尺寸)更新 - 刷新布局
假设lineEdits的初始尺寸为100x30。我需要改变lineEdit小部件的大小,我这样做,从这样的代码:
self.__ui.lineEdit1.resize(40, 30)
self.__ui.lineEdit2.resize(140, 30)
self.__ui.lineEdit3.resize(80, 30)
它们的大小被改变,但他们的X位置也不是那么我得到第一个两(65)之间的大空间,并且lineEdit2低于lineEdit3。
我应该以某种方式更新布局或框架吗?我试过layout.setSpacing(5)前后提到的代码,但在lineEdit的这种情况下,大小没有改变(这是最初的100再次)
编辑这里是截图(我在油漆编辑:d )作为巡礼纪念日要求:
你可以在调用'resize'之前和之后发布截图吗? – qurban
@qurban请看看编辑我的问题 – Aleksandar
每次你想调整窗口小部件的大小时,使用'setFixedSize()'而不是'resize()',正如ekhumoro在他的回答中所建议的那样。该解决方案符合您的要求。 – qurban