python集成pyqt工具开发GUI窗体应用

                      使用python搭建pyqt开发环境

一 .下载qt工具

如果是mac系统的可以在我的百度云上下载

百度云链接:https://pan.baidu.com/s/1SJut6j2h6AuKIwha-a6fNA  密码:ter

window或别的系统请自行官网下载

qt官网: https://www.qt.io/download

下载完了,然后安装qt

使用pycharm创建一个空的项目

然后使用命令下载 pyqt5:  

pip install pyqt5

安装完成,在idea的tools工具集成pyqt5,在settings中配置

选中PyQt5然后点击+符号

搜索pyqt5 然后点击下面的install按钮

二. 配置qt工具

1. 配置qt工具,选中External Tools,然后点击图中的➕添加新工具

Name是工具的名称,自定义取

Program配置的qt工具安装后的Designer.app的绝对路径,window应该是Designer.exe

 Program:   /Users/lijunming/Qt5.8.0/5.8/clang_64/bin/Designer.app

Working diectory:  添加$ProjectFileDir$ 就行,点击ok就完成了

2.配置把qt生成的.ui文件转换成 .py文件

Program: 填写 python执行文件的绝对路径,window的执行文件是python3.7.exe

Arguments添加python执行的命令 

Arguments:   -m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py

Working directory添加 $FileDir$ 文件目录就行,然后点击OK保存

三 使用qt工具创建窗体,然后使用上面新建的PyUic工具把ui文件转换成 .py文件

然后  ctrl + s保存到刚刚创建的python应用下面

然后使用工具把ui文件转换成 .py文件

使用工具后,会在同级多一个window.py文件

在window.py文件的class上面 添加启动window 的方法

然后在类的下面添加方法调用

完整代码如下

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

# Form implementation generated from reading ui file 'window.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     #导入系统模块
def show_MainWindow():
    app=QtWidgets.QApplication(sys.argv)    #实例化QApplication类,作为GUI主程序的入口类
    MainWindow=QtWidgets.QMainWindow()      #创建MainWindow
    ui=Ui_MainWindow()                      #实例化Ui类
    ui.setupUi(MainWindow)                  #设置窗体ui
    MainWindow.show()                       #显示窗体
    sys.exit(app.exec_())                   #当窗体创建完成,需要结束主循环过程

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(630, 10, 113, 32))
        self.pushButton.setObjectName("pushButton")
        self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget)
        self.textBrowser.setGeometry(QtCore.QRect(260, 210, 191, 41))
        self.textBrowser.setObjectName("textBrowser")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 22))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        self.pushButton.clicked.connect(MainWindow.close)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushButton.setText(_translate("MainWindow", "关闭"))
        self.textBrowser.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'.SF NS Text\'; font-size:13pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">hello   pyqt5</p></body></html>"))

#启动window
if __name__=='__main__':
    show_MainWindow()

然后执行这个文件

python3 window.py

效果图如下

到此你已经学会了用python集成qt搭建窗体应用环境了

猜你喜欢

转载自blog.csdn.net/ming19951224/article/details/86557820