pyqt5之GroupBox
import sys from PyQt5.QtWidgets import QApplication, QGroupBox, QVBoxLayout, QPushButton, QWidget app = QApplication(sys.argv) # 创建一个 QWidget 作为主窗口 main_widget = QWidget() # 创建一个 QGroupBox groupBox = QGroupBox("我的分组框") groupBox.setStyleSheet("QGroupBox { border: 2px solid #000; }") groupBox.setCheckable(True) # 使分组框可折叠 # 创建一个按钮 button = QPushButton("点击我") # 为分组框设置布局,并添加按钮 layout = QVBoxLayout() layout.addWidget(button) groupBox.setLayout(layout) # 将分组框设置为中心部件 main_widget.setLayout(QVBoxLayout()) main_widget.layout().addWidget(groupBox) main_widget.show() sys.exit(app.exec_())
layout = QVBoxLayout()
layout.addWidget(button)
groupBox.setLayout(layout)
这段代码是 PyQt 中布局管理的一个典型用法,用于将控件添加到布局中,并将布局设置给容器部件。以下是代码的详细解释:
-
layout = QVBoxLayout()
:- 创建一个垂直布局对象
layout
。QVBoxLayout
是 PyQt 中的一个类,用于管理控件的垂直排列。
- 创建一个垂直布局对象
-
layout.addWidget(button)
:- 将一个按钮控件
button
添加到layout
中。addWidget
是QVBoxLayout
的一个方法,用于将控件添加到布局中,控件会按照添加的顺序垂直排列。
- 将一个按钮控件
-
groupBox.setLayout(layout)
:- 将创建的垂直布局
layout
设置给groupBox
。setLayout
是QGroupBox
的一个方法,用于设置容器部件的布局管理器。这样,groupBox
内部的控件就会按照layout
的规则进行排列。
- 将创建的垂直布局
这段代码的作用是将按钮 button
添加到垂直布局中,并将该布局应用到分组框 groupBox
上。这样,按钮 button
就会显示在分组框内部,并且随着分组框的展开和折叠而显示或隐藏。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结