【pyqt】(四)Designer布局

布局

之前我们利用鼠标拖动的控件的时候,发现一些部件很难完成对齐这些工作,pyqt为我们提供的多种布局功能不仅可以让排版更加美观,还能够让界面自适应窗口大小的变化,使得布局美观合理。最常使用的三种布局就是垂直河子布局、水平盒子布局和栅格布局

栅格布局

栅格布局(Grid Layout)是一种将容器空间划分为行和列的二维布局方式,就像一个表格一样。部件可以放置在这些行和列所构成的单元格中,并且可以指定部件跨越的行数和列数,从而实现灵活多样的布局效果。

  • 它通过定义行和列的数量以及大小来划分空间。行和列的大小可以是固定的,也可以是根据部件的大小或容器的大小动态变化的。
  • 当向栅格布局中添加部件时,需要指定部件放置的行索引和列索引,索引从 0 开始计数。例如,grid.addWidget(button, 0, 0)表示将按钮部件放置在第 1 行第 1 列(因为索引从 0 开始)的单元格中。
  • 还可以指定部件跨越的行数和列数,比如grid.addWidget(label, 1, 0, 1, 2)表示将标签部件放置在第 2 行第 1 列,并且该标签跨越 1 行 2 列的单元格。

垂直/水平盒子布局

这两个盒子布局就是按照垂直或者水平的方向上进行布局,两者通常组合使用,实现比栅格布局更灵活的布局,通常在一个窗口设计中,整体的布局可以使用垂直布局,在垂直方向上的每一个大盒子中再使用水平盒子布局进行嵌套使用。

此时在这些控件之外,右击选择布局就会对整体窗口进行布局,这样会实现让整体界面自适应窗口大小的变化效果

间隔器

在Designer中布局下面有两个间隔器的控件,因为直接使用布局的话,各个控件之间的大小和距离都会平均的分配,如果想要更加灵活地设定这些控件的大小,可以使用间隔器实现。

相关推荐
兵慌码乱2 小时前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot4 小时前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海9 小时前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱11 小时前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽16 小时前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码16 小时前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
兵慌码乱1 天前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵1 天前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
FreakStudio1 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
用户0332126663671 天前
使用 Python 从零创建 Word 文档
python