一 .下载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", "\n"
"\n"
"hello pyqt5
"))
#启动window
if __name__=='__main__':
show_MainWindow()
然后执行这个文件
python3 window.py
效果图如下
到此你已经学会了用python集成qt搭建窗体应用环境了