一、前言
本节我们介绍布局组件中的网格布局QGridLayout。
二、学习目标
1.QGridLayout网格布局的应用
三、知识点
1.【QGridLayout网格布局的应用】
网格布局也称栅格布局,布局框按照行和列进行排列,将控件排列到指定的网格位置。
-
添加步骤
1)创建网格布局实例:
QGridLayout()
2)创建子组件,如按钮组件
3)为布局添加子组件:
addWidget()
4)为窗体设置布局:
setLayout()
-
代码示例
import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QGridLayout class QmyWidget(QWidget): def __init__(self, parent=None): super().__init__(parent) # 调用父类的构造函数,创建QWidget窗体 self.setupUi() def setupUi(self): """页面初始化""" # 1.创建网格布局实例 self.layout = QGridLayout() # 2.创建子组件,如按钮组件 self.button1 = QPushButton("Button1") self.button2 = QPushButton("Button2") self.button3 = QPushButton("Button3") self.button4 = QPushButton("Button4") self.button5 = QPushButton("Button5") # 3.为布局添加子组件 self.layout.addWidget(self.button1, 0, 0, 1, 1) # 在第1行第1列,占1行占1列 self.layout.addWidget(self.button2, 0, 1, 1, 1) # 在第1行第2列,占1行占1列 self.layout.addWidget(self.button3, 1, 0, 1, 1) # 在第2行第1列,占1行占1列 self.layout.addWidget(self.button4, 1, 1, 1, 1) # 在第2行第2列,占1行占1列 self.layout.addWidget(self.button5, 2, 0, 1, 2) # 在第3行第1列,占1行占2列 # 4.为窗体设置布局 self.setLayout(self.layout) if __name__ == '__main__': app = QApplication(sys.argv) myMain = QmyWidget() myMain.show() sys.exit(app.exec_())