【PyQt5】{6} —— QGridLayout网格布局

QGridLayout

QGridLayout类将部件布置在网格中。

user_label: (0, 0),第1行第1列
user_line: (0, 1),第1行第2列
pwd_label: (1, 0),第2行第1列
pwd_line: (1, 1),第2行第2列


# -*- coding: utf-8 -*-
"""
Created on Sat May  9 09:08:54 2020

@author: Giyn
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QPushButton, QGridLayout


class Simple_Window(QWidget):
    def __init__(self):
        super(Simple_Window, self).__init__() # 使用super函数可以实现子类使用父类的方法
        self.setWindowTitle('登录系统') # 设置窗口标题
        self.user_label = QLabel("用户名:", self) # self是指定的父类Simple_Window,表示QLabel属于Simple_Window窗口
        self.pwd_label = QLabel("密码:", self)
        self.user_line = QLineEdit(self)
        self.pwd_line = QLineEdit(self)
        self.login_button = QPushButton("登录", self)
        self.sign_button = QPushButton("注册", self)
        
        self.g_layout = QGridLayout() # 实例化一个QGridLayout对象
        self.g_layout.addWidget(self.user_label, 0, 0)
        self.g_layout.addWidget(self.user_line, 0, 1)
        self.g_layout.addWidget(self.pwd_label, 1, 0)
        self.g_layout.addWidget(self.pwd_line, 1, 1)
        self.g_layout.addWidget(self.login_button, 2, 0)
        self.g_layout.addWidget(self.sign_button, 2, 1)

        self.setLayout(self.g_layout) # 调用窗口的setLayout方法将总布局设置为窗口的整体布局
        
if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = Simple_Window()
    window.show()
    sys.exit(app.exec())

Output:

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章