QT界面让控件跟随窗口大小伸缩变化

本文讲述了如何在QT5.12环境中使窗口内的控件随窗口大小变化自动调整,方法是使用栅格布局或水平/垂直布局,并通过将控件放入Layout控件中实现复杂页面布局。
摘要由CSDN通过智能技术生成

一.问题

如果改变了窗口的大小,应该怎么做才能让窗口内部的控件可以随着窗口大小的改变,自身大小也能随之改变呢?

测试环境:QT5.12

二.让控件跟随窗口大小变换的方法:

1.首先往窗口界面中拖入一个控件(任何控件都可以:Button或Check Box);

2.然后在窗口界面空白处右击右键→布局→栅格布局(G)(或者水平布局(H)、垂直布局(V)任选其一)

2.布局后界面如下
注:一定要先拖入控件才能对本窗体进行布局

4.运行结果

5.实际应用

   实际运用中如果页面比较复杂,可以用几个Layout控件,然后分别把控件放到Layout控件中,然后再进行布局,就会更合理,如下图所示:

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Qt 中,可以通过设置控件的布局来实现控件大小随窗口大小变化Qt 提供了多种布局方式,包括水平布局、垂直布局、网格布局等。这里以水平布局为例,介绍如何让控件大小随窗口大小变化。 1. 在 Qt Designer 中选中需要自动调整大小的控件,右键点击选择“布局”->“水平布局”。 2. 在“属性编辑器”中,选中“水平布局”,将“sizeConstraint”属性设置为“QLayout::SetDefaultConstraint”。 3. 在“属性编辑器”中,选中“水平布局”,将“stretch”属性设置为“1”。 4. 保存并运行程序,窗口大小变化时,控件大小会随着窗口大小变化。 下面是一个示例代码: ```python from PyQt5.QtWidgets import QApplication, QHBoxLayout, QLabel, QLineEdit, QWidget app = QApplication([]) window = QWidget() # 创建水平布局 layout = QHBoxLayout() # 创建标签和文本框控件 label = QLabel('Label:') edit = QLineEdit() # 将控件添加到布局中 layout.addWidget(label) layout.addWidget(edit) # 设置控件大小随窗口大小变化 layout.setSizeConstraint(QLayout.SetDefaultConstraint) layout.setStretch(1, 1) # 将布局应用到窗口中 window.setLayout(layout) window.show() app.exec_() ``` 在上面的示例代码中,我们创建了一个水平布局,并将标签和文本框控件添加到布局中。然后,我们通过设置布局的“sizeConstraint”属性和“stretch”属性,实现了控件大小随窗口大小变化。最后,我们将布局应用到窗口中,并显示窗口

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI+程序员在路上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值