更新刷新布局

2024-10-02 02:23:58 发布

您现在位置:Python中文网/ 问答频道 /正文

在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下面。你知道吗

我应该以某种方式更新布局或框架吗?我试过了布局.设置间距(5) 前面和后面提到的代码,但在这种情况下,lineEdit的大小是不变的(它的初始值是100)

编辑这是Qurban要求的屏幕截图(我在paint:D中编辑过):enter image description here


Tags: 代码self编辑ui间隔部件水平布局
1条回答
网友
1楼 · 发布于 2024-10-02 02:23:58

使用setFixedSize方法:

    self.__ui.lineEdit1.setFixedSize(40, 30)
    self.__ui.lineEdit2.setFixedSize(140, 30)
    self.__ui.lineEdit3.setFixedSize(80, 30)

您可能还需要考虑使用水平布局的layoutstreght属性。这允许您设置每行编辑所允许的空间比例。因此,如果您将其设置为“1,4,2”,第二行编辑将获得四倍于第一行的空间,第三行编辑将获得两倍于第一行的空间。这样做的好处是,当主窗口调整大小时,它会自动缩放。你知道吗

相关问题 更多 >

    热门问题