Python|Pyqt5-Python應用開發——第一個小程序的實現


環境:python 3.6.6

編輯器:pycharm

其他:QtDesigner:Qt Designer,是一個直觀可見的全方位 GUI 構造器,它所設計出來的用戶界面能夠在多種平台上使用。它是 Qt SDK 的一部分,也是最為重要的開發 工具之一。利用 Qt Designer,我們可以拖放各種 Qt 控件構造圖形用戶界面並可預覽效果。

   PyUIC:可將UI文件轉換為.py文件

利用QtDesigner設計界面

pycharm中Tools——External Tools——QtDesigner,進入如下界面:

將布局設置為下面所示:

將ui文件保存至py項目所在的文件夾中:

利用PyUIC將UI文件轉換為.py文件

UI文件右鍵單擊——External Tools——PyUIC即可。

轉換的.py文件如下:

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'dialog.ui'
#
# Created by: PyQt5 UI code generator 5.11.3
#
# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets
import sys
class Ui_Dialog(object):
    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(400, 300)
        self.pushButton = QtWidgets.QPushButton(Dialog)
        self.pushButton.setGeometry(QtCore.QRect(270, 70, 71, 16))
        self.pushButton.setObjectName("pushButton")
        self.pushButton.resize(100,30)
        self.label = QtWidgets.QLabel(Dialog)
        self.label.setGeometry(QtCore.QRect(20, 70, 71, 16))
        self.label.setObjectName("label")
        self.textBrowser = QtWidgets.QTextBrowser(Dialog)
        self.textBrowser.setGeometry(QtCore.QRect(100, 120, 221, 141))
        self.textBrowser.setObjectName("textBrowser")
        self.lineEdit = QtWidgets.QLineEdit(Dialog)
        self.lineEdit.setGeometry(QtCore.QRect(100, 70, 113, 20))
        self.lineEdit.setObjectName("lineEdit")
        self.label_2 = QtWidgets.QLabel(Dialog)
        self.label_2.setGeometry(QtCore.QRect(10, 120, 81, 16))
        self.label_2.setObjectName("label_2")

        self.retranslateUi(Dialog)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
        self.pushButton.setText(_translate("Dialog", "PushButton"))
        self.label.setText(_translate("Dialog", "這是Line Edit->"))
        self.label_2.setText(_translate("Dialog", "這是Text Browser->"))

運行程序

加入下列代碼:

def main():
    '''
    主函數,用於運行程序
    :return: None
    '''
    app = QtWidgets.QApplication(sys.argv)
    dialog = QtWidgets.QDialog()
    ui = Ui_Dialog()
    ui.setupUi(dialog)
    dialog.show()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

 

注意: Qt Designer編寫的程序可讀性較差,在初期學習的時候使用Qt Designer來生成代碼,卻不利於對原理的理解。按照自己的思路去編寫代碼更有效果。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM