PyQt5快速构建GUI应用的方法

这篇文章将为大家详细讲解有关PyQt5快速构建GUI应用的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联是一家集网站建设,昭化企业网站建设,昭化品牌网站建设,网站定制,昭化网站建设报价,网络营销,网络优化,昭化网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

PyQt5快速构建一个简单的GUI应用:

1、添加控件

我们从控件区拖 3 个按钮和 2 个输入框到界面设计区域

PyQt5快速构建GUI应用的方法

2、增加控件属性

选中控件,鼠标右键为控件新增属性,比如:控件内容、控件名称(相当于id),对于一些复杂的属性设置,需要在属性区域单独进行设置

编辑完 UI 界面之后,会在本地生成一个 *.ui 的文件

PyQt5快速构建GUI应用的方法

3、将ui文件转换成py文件

选择 *.ui 文件,在 Pycharm 中使用 PyUIC 命令,将 ui 文件转换为 py 文件

# ui文件转为py文件
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 790)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(130, 80, 111, 41))
        self.pushButton.setObjectName("pushButton")
        self.username = QtWidgets.QLineEdit(self.centralwidget)
        self.username.setGeometry(QtCore.QRect(260, 80, 271, 41))
        self.username.setObjectName("username")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(130, 150, 111, 41))
        self.pushButton_2.setObjectName("pushButton_2")
        self.password = QtWidgets.QLineEdit(self.centralwidget)
        self.password.setGeometry(QtCore.QRect(260, 150, 271, 41))
        self.password.setObjectName("password")
        self.login = QtWidgets.QPushButton(self.centralwidget)
        self.login.setGeometry(QtCore.QRect(260, 230, 141, 61))
        self.login.setObjectName("login")
        MainWindow.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushButton.setText(_translate("MainWindow", "用户名:"))
        self.pushButton_2.setText(_translate("MainWindow", "密码:"))
        self.login.setText(_translate("MainWindow", "登录"))

4、为按钮添加点击事件

使用 控件名.信号.connect(槽函数) 的形式,为控件添加一个点击事件的监听

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        # 为登录按钮指定事件
        # clicked:信号,login_met:槽函数
        self.login.clicked.connect(self.login_met)
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def login_met(self):
        """
        登录事件(槽函数)
        :return:
        """
        # 用户名输入框的内容
        username = self.login.text()
        # 密码输入框的内容
        password = self.password.text()
        print("输入的用户名是:", username, "密码是:", password)

5、展示界面

最后,新建一个 py 文件,实例化一个 QApplication 对象,将上面创建的 MainWindow 展示出来即可。

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
# 界面文件
from temp import *
class CustomUI(QMainWindow, Ui_MainWindow):
    def __init__(self, parent=None):
        super(CustomUI, self).__init__(parent)
        self.setupUi(self)
if __name__ == '__main__':
    app = QApplication(sys.argv)
    cutomUI = CustomUI()
    cutomUI.show()
    sys.exit(app.exec_())

需要注意的是,这部分内容仅仅是调用显示 GUI 界面的逻辑,实际项目开发过程中很少变动。

PyQt5快速构建GUI应用的方法

关于PyQt5快速构建GUI应用的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


分享名称:PyQt5快速构建GUI应用的方法
转载源于:http://ybzwz.com/article/ihgjje.html