PyQt5快速構(gòu)建GUI應(yīng)用的方法

這篇文章將為大家詳細講解有關(guān)PyQt5快速構(gòu)建GUI應(yīng)用的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),昭化企業(yè)網(wǎng)站建設(shè),昭化品牌網(wǎng)站建設(shè),網(wǎng)站定制,昭化網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,昭化網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

PyQt5快速構(gòu)建一個簡單的GUI應(yīng)用:

1、添加控件

我們從控件區(qū)拖 3 個按鈕和 2 個輸入框到界面設(shè)計區(qū)域

PyQt5快速構(gòu)建GUI應(yīng)用的方法

2、增加控件屬性

選中控件,鼠標右鍵為控件新增屬性,比如:控件內(nèi)容、控件名稱(相當于id),對于一些復(fù)雜的屬性設(shè)置,需要在屬性區(qū)域單獨進行設(shè)置

編輯完 UI 界面之后,會在本地生成一個 *.ui 的文件

PyQt5快速構(gòu)建GUI應(yīng)用的方法

3、將ui文件轉(zhuǎn)換成py文件

選擇 *.ui 文件,在 Pycharm 中使用 PyUIC 命令,將 ui 文件轉(zhuǎn)換為 py 文件

# ui文件轉(zhuǎn)為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(槽函數(shù)) 的形式,為控件添加一個點擊事件的監(jiān)聽

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        # 為登錄按鈕指定事件
        # clicked:信號,login_met:槽函數(shù)
        self.login.clicked.connect(self.login_met)
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def login_met(self):
        """
        登錄事件(槽函數(shù))
        :return:
        """
        # 用戶名輸入框的內(nèi)容
        username = self.login.text()
        # 密碼輸入框的內(nèi)容
        password = self.password.text()
        print("輸入的用戶名是:", username, "密碼是:", password)

5、展示界面

最后,新建一個 py 文件,實例化一個 QApplication 對象,將上面創(chuàng)建的 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_())

需要注意的是,這部分內(nèi)容僅僅是調(diào)用顯示 GUI 界面的邏輯,實際項目開發(fā)過程中很少變動。

PyQt5快速構(gòu)建GUI應(yīng)用的方法

關(guān)于PyQt5快速構(gòu)建GUI應(yīng)用的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

新聞標題:PyQt5快速構(gòu)建GUI應(yīng)用的方法
文章出自:http://muchs.cn/article24/ihgjje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、網(wǎng)站營銷企業(yè)建站、手機網(wǎng)站建設(shè)、電子商務(wù)、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司