当前位置: 首页 > news >正文

PyQt5水平布局--只需5分钟带你搞懂

PyQt5水平布局(QHBoxLayout)是一种在GUI应用程序中用于组织和排列控件的布局方式。它允许开发者将控件在水平方向上从左到右依次排列,非常适合于需要并排显示控件的场景,如工具栏、水平菜单等。

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QGroupBox, QVBoxLayout, QHBoxLayout, QRadioButtonclass Window(QWidget):def __init__(self):super().__init__()self.init_ui()def init_ui(self):self.setWindowTitle('水平布局')self.resize(300, -1)# 最外层的垂直布局,包含三部分:爱好、性别、年龄layout = QVBoxLayout()# -----创建第1个组,添加多个组件-----# hobby 主要是保证他们是一个组。hobby_box = QGroupBox("爱好")# v_layout 保证三个爱好是垂直摆放v_layout = QVBoxLayout()btn1 = QRadioButton("唱")btn2 = QRadioButton("跳")btn3 = QRadioButton("rap")# 添加到v_layout中v_layout.addWidget(btn1)v_layout.addWidget(btn2)v_layout.addWidget(btn3)# 把v_layout添加到hobby_box中hobby_box.setLayout(v_layout)# -----创建第2个组,添加多个组件-----# 性别组gender_box = QGroupBox("性别")# 性别容器/水平布局g_layout = QHBoxLayout()# 性别选项btn4 = QRadioButton("男")btn5 = QRadioButton("女")# 追加到性别容器中g_layout.addWidget(btn4)g_layout.addWidget(btn5)# 添加到 box中gender_box.setLayout(g_layout)# -----创建第3个组,添加多个组件-----# 年龄组/水平布局age_box = QGroupBox("年龄")a_layout = QHBoxLayout()btn6 = QRadioButton("成年")btn7 = QRadioButton("未成年")a_layout.addWidget(btn6)a_layout.addWidget(btn7)age_box.setLayout(a_layout)# 把爱好的内容添加到布局中layout.addWidget(hobby_box)# 把性别的内容添加到布局中layout.addWidget(gender_box)# 把年龄的内容添加到布局中layout.addWidget(age_box)# 设置窗口显示的内容是最外层容器self.setLayout(layout)if __name__ == '__main__':app = QApplication(sys.argv)w = Window()w.show()sys.exit(app.exec())

http://www.lryc.cn/news/389969.html

相关文章:

  • telegram mini app和game实现登录功能
  • 【Python】字典练习
  • Apache POI、EasyPoi、EasyExcel
  • gcop:简化 Git 提交流程的高效助手 | 一键生成 commit message
  • TS_类型
  • Linux源码阅读笔记10-进程NICE案例分析2
  • Elasticsearch实战教程: 如何在海量级数据中进行快速搜索
  • Python学习笔记24:进阶篇(十三)常见标准库使用之数据压缩功能模块zlib,gzip,bz2,lzma的学习使用
  • 【笔记】Android Settings 应用设置菜单的界面代码介绍
  • Symfony配置管理深度解析:构建可维护项目的秘诀
  • 视频的宣传片二维码怎么做?扫码播放视频的制作教程
  • 实用的网站
  • Monorepo(单体仓库)与 MultiRepo(多仓库): Monorepo 单体仓库开发策略与实践指南
  • 使用 PyTorch 创建的多步时间序列预测的 Encoder-Decoder 模型
  • 开启IT世界的第一步:高考新生的暑期学习指南
  • 软考系统架构师高效备考方法论
  • 【neo4j图数据库】入门实践篇
  • 【TS】TypeScript 原始数据类型深度解析
  • 怎么样调整分类的阈值
  • java+mysql教师管理系统
  • PDF文档如何统计字数,统计PDF文档字数的方法有哪些?
  • 在Python asyncio中如何识别协程是否被block了
  • Hyper-V虚拟机固定IP地址(手把手教设置)
  • 以 Vue 3 项目为例,多个请求下如何全局封装 Loading 的展示与关闭?其中大有学问!
  • Node.js学习(一)
  • Spring Data JPA使用及实现原理总结
  • 【C语言】extern 关键字
  • Linux--V4L2应用程序开发(二)改变亮度
  • [Gstreamer] 消息处理handler的设置
  • 线性代数笔记