PyQt:桌面程序设计的饕餮盛宴

import sys

from PyQt6.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QPushButton, QHBoxLayout, QVBoxLayout

from PyQt6.QtGui import QIcon

from PyQt6.QtCore import Qt

class MyWindow(QWidget):

     """ QWidget 类派生的桌面应用程序窗口类 """

     def __init__(self):

         """ 构造函数 """

         super().__init__()

         self.setWindowTitle(' 分区布局 ')

         self.setWindowIcon(QIcon('res/qt.png'))

         self.setGeometry(400, 300, 320, 160) # 设置窗位置和大小

         lab_acc = QLabel(' 账号: ')

         account = QLineEdit()

         account.setAlignment(Qt.AlignmentFlag.AlignCenter)

         lab_pw = QLabel(' 密码: ')

         passwd = QLineEdit()

         passwd.setAlignment(Qt.AlignmentFlag.AlignCenter)

         passwd.setEchoMode(QLineEdit.EchoMode.Password) # 不显示密码

         btn_ok = QPushButton(' 确定 ')

         btn_cancel = QPushButton(' 取消 ')

         # 使用水平布局管理器布局 lab_acc 控件和 account 控件,左右留白 10 像素

         hbox_acc = QHBoxLayout()

         hbox_acc.addSpacing(10)

         hbox_acc.addWidget(lab_acc)

         hbox_acc.addWidget(account)

         hbox_acc.addSpacing(10)

         # 使用水平布局管理器布局 lab_pw 控件和 passwd 控件,左右留白 10 像素

         hbox_pw = QHBoxLayout()

         hbox_pw.addSpacing(10)

         hbox_pw.addWidget(lab_pw)

         hbox_pw.addWidget(passwd)

         hbox_pw.addSpacing(10)

         # 使用水平布局管理器布局 btn_ok 控件和 btn_cancel 控件

         hbox_btn = QHBoxLayout() # 水平布局管理器

         hbox_btn.addStretch(5) # 外汇跟单gendan5.com 设置左侧拉伸因子

         hbox_btn.addWidget(btn_ok) # 添加 btn_ok 控件

         hbox_btn.addWidget(btn_cancel) # 添加 btn_cancel 控件

         hbox_btn.addStretch(1) # 设置右侧拉伸因子

         # 使用垂直布局管理器布局上面 3 个水平布局管理器

         vbox = QVBoxLayout()

         vbox.addSpacing(10)

         vbox.addLayout(hbox_acc)

         vbox.addSpacing(5)

         vbox.addLayout(hbox_pw)

         vbox.addStretch(1)

         vbox.addLayout(hbox_btn)

         vbox.addSpacing(10)

         # 将垂直布局管理器应用到窗口

         self.setLayout(vbox)

         self.show() # 显示窗口

if __name__ == '__main__':

     app = QApplication(sys.argv)

     win = MyWindow()

     sys.exit(app.exec())


请使用浏览器的分享功能分享到微信等