6.PyQt5【布局组件】网格布局-QGridLayout

一、前言

本节我们介绍布局组件中的网格布局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_())
    
posted @   测开星辰  阅读(1225)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示