十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)公司自2013年起,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元岳麓做網(wǎng)站,已為上家服務(wù),為岳麓各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220這篇文章將為大家詳細(xì)講解有關(guān)PyQt5快速構(gòu)建GUI應(yīng)用的方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
PyQt5快速構(gòu)建一個(gè)簡(jiǎn)單的GUI應(yīng)用:
1、添加控件
我們從控件區(qū)拖 3 個(gè)按鈕和 2 個(gè)輸入框到界面設(shè)計(jì)區(qū)域
2、增加控件屬性
選中控件,鼠標(biāo)右鍵為控件新增屬性,比如:控件內(nèi)容、控件名稱(相當(dāng)于id),對(duì)于一些復(fù)雜的屬性設(shè)置,需要在屬性區(qū)域單獨(dú)進(jìn)行設(shè)置
編輯完 UI 界面之后,會(huì)在本地生成一個(gè) *.ui 的文件
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、為按鈕添加點(diǎn)擊事件
使用 控件名.信號(hào).connect(槽函數(shù)) 的形式,為控件添加一個(gè)點(diǎn)擊事件的監(jiān)聽
class Ui_MainWindow(object): def setupUi(self, MainWindow): # 為登錄按鈕指定事件 # clicked:信號(hào),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、展示界面
最后,新建一個(gè) py 文件,實(shí)例化一個(gè) QApplication 對(duì)象,將上面創(chuàng)建的 MainWindow 展示出來(lái)即可。
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 界面的邏輯,實(shí)際項(xiàng)目開發(fā)過(guò)程中很少變動(dòng)。
關(guān)于PyQt5快速構(gòu)建GUI應(yīng)用的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。