Python3.7安装PyQt5 运行配置Pycharm的详细教程


Posted in Python onOctober 15, 2020

系统:win10 64位  win7 64位都有测试了下, python版本3.7.3 安装PyQt5个人操作步骤,包裹在不同操作系统上遇到的问题,综合的解决

第一步:在cmd窗口中,使用国内镜像

下载PyQt5:

pip install PyQt5 -i https://pypi.doubanio.com/simple

然后在下载PyQt5-tools:

pip install PyQt5-tools -i https://pypi.doubanio.com/simple

Python3.7安装PyQt5 运行配置Pycharm的详细教程

出现成功这个单词,就按照完毕

一般这个步骤都可以成功

第二步:然后开始尝试打开designer.exe

由于我个人python安装在E盘,进入这个文件夹

E:\python\Lib\site-packages\pyqt5_tools\Qt\bin

Python3.7安装PyQt5 运行配置Pycharm的详细教程

直接双击 designer.exe.我尝试了不同的电脑,即使操作系统相同,但是问题还是可能不同,不过大致都有解决办法

第一个问题,是双击后出现了弹窗

Python3.7安装PyQt5 运行配置Pycharm的详细教程

解决办法是,退到上一级文件夹

Python3.7安装PyQt5 运行配置Pycharm的详细教程

复制plugins这文件夹,再次进入bin文件,里面也有一个plugins文件夹,直接粘贴即可,选择替换覆盖确定

这个时候再次双击designer.exe就可以打开画面

Python3.7安装PyQt5 运行配置Pycharm的详细教程

如果为了求方便,我觉得可以把这个designer.exe发送快捷方式到桌面,方便进入

第三步:pycharm配置打开设计器

打开File-->Settings

Python3.7安装PyQt5 运行配置Pycharm的详细教程

Python3.7安装PyQt5 运行配置Pycharm的详细教程

我根据自己本地路径输入的地方就3个

Name:QTDesigner

Program:E:\python\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe    (大家自己的designer.exe路径)

Working directory:$ProjectFileDir$

然后在配置一下pyuic

同样的操作,在加号新建一个

Name:PyUIC

Program:E:\python\python.exe       (大家自己的python.exe路径)

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

(太长的内容直接复制,大致意思就是把一个.ui文件翻译成.py文件,并且.py文件名字和.ui名字相同)

Working directory:$FileDir$

Python3.7安装PyQt5 运行配置Pycharm的详细教程

Python3.7安装PyQt5 运行配置Pycharm的详细教程

第4步:测试一下在图形界面下,是否可以编译成.py文件,我们最终的核心就是为了不去写窗口的排版而学习pyqt5

打开设计器

Python3.7安装PyQt5 运行配置Pycharm的详细教程

为了做测试,我随便选择一些按钮组件

Python3.7安装PyQt5 运行配置Pycharm的详细教程

左边的元素随意拖动到右边

Python3.7安装PyQt5 运行配置Pycharm的详细教程

然后保存一下,就会在项目下,生成一个.ui的文件

Python3.7安装PyQt5 运行配置Pycharm的详细教程

在pycharm项目文件预览窗口中

Python3.7安装PyQt5 运行配置Pycharm的详细教程

右键选择

Python3.7安装PyQt5 运行配置Pycharm的详细教程

就会生成untitled.py文件

打开这个文件,就已经把.ui文件生成为.py文件

Python3.7安装PyQt5 运行配置Pycharm的详细教程

到这里,就大功告成,     在这个过程中如果designer.exe缺少什么 dll文件,我们可以直接百度去下载对应的.dll文件就行,百度一查一大堆

第5步:运行一下刚才的界面代码,发送运行案例

# -*- coding: utf-8 -*-
 
# Form implementation generated from reading ui file 'untitled.ui'
#
# Created by: PyQt5 UI code generator 5.15.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
 
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
 
 
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(80, 40, 75, 23))
    self.pushButton.setObjectName("pushButton")
    self.listView = QtWidgets.QListView(self.centralwidget)
    self.listView.setGeometry(QtCore.QRect(210, 40, 256, 192))
    self.listView.setObjectName("listView")
    self.radioButton = QtWidgets.QRadioButton(self.centralwidget)
    self.radioButton.setGeometry(QtCore.QRect(80, 120, 89, 16))
    self.radioButton.setObjectName("radioButton")
    MainWindow.setCentralWidget(self.centralwidget)
    self.menubar = QtWidgets.QMenuBar(MainWindow)
    self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))
    self.menubar.setObjectName("menubar")
    MainWindow.setMenuBar(self.menubar)
    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", "PushButton"))
    self.radioButton.setText(_translate("MainWindow", "RadioButton"))
 
if __name__ == "__main__":
  app = QtWidgets.QApplication(sys.argv)
  # 创建窗体对象
  MainWindow = QtWidgets.QMainWindow()
  # 创建Pyqt窗体对象
  pyui = Ui_MainWindow()
  pyui.setupUi(MainWindow)
  MainWindow.show()
  sys.exit(app.exec_())

运行无错,基本设置完成

总结

到此这篇关于Python3.7安装PyQt5 运行配置Pycharm的详细教程的文章就介绍到这了,更多相关python 安装PyQt5内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用Python的urllib库提交WEB表单
Feb 24 Python
python实现进程间通信简单实例
Jul 23 Python
python虚拟环境virtualenv的安装与使用
Sep 21 Python
python中print()函数的“,”与java中System.out.print()函数中的“+”功能详解
Nov 24 Python
Python实现简单遗传算法(SGA)
Jan 29 Python
PyQt5每天必学之工具提示功能
Apr 19 Python
Python面向对象类继承和组合实例分析
May 28 Python
Python3.5集合及其常见运算实例详解
May 01 Python
Python基于BeautifulSoup和requests实现的爬虫功能示例
Aug 02 Python
python中pygame安装过程(超级详细)
Aug 04 Python
Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法
Sep 23 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
python利用faker库批量生成测试数据
Oct 15 #Python
如何利用python检测图片是否包含二维码
Oct 15 #Python
用python实现一个简单计算器(完整DEMO)
Oct 14 #Python
python在linux环境下安装skimage的示例代码
Oct 14 #Python
python中如何使用虚拟环境
Oct 14 #Python
Python 3.9的到来到底是意味着什么
Oct 14 #Python
python破解同事的压缩包密码
Oct 14 #Python
You might like
destoon公司主页模板风格的添加方法
2014/06/20 PHP
php获取textarea的值并处理回车换行的方法
2014/10/20 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
php源码的使用方法讲解
2019/09/26 PHP
jQuery TextBox自动完成条
2009/07/22 Javascript
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
2010/04/24 Javascript
javascript textContent与innerText的异同分析
2010/10/22 Javascript
浏览器兼容console对象的简要解决方案分享
2013/10/24 Javascript
刷新页面的几种方法小结(JS,ASP.NET)
2014/01/07 Javascript
jquery中对于批量deferred的处理方法
2014/01/22 Javascript
js动态删除div元素基本思路及实现代码
2014/05/08 Javascript
JavaScript数组随机排列实现随机洗牌功能
2015/03/19 Javascript
JavaScript中反正弦函数Math.asin()的使用简介
2015/06/14 Javascript
Node.js编写组件的三种实现方式
2016/02/25 Javascript
原生js获取iframe中dom元素--父子页面相互获取对方dom元素的方法
2016/08/05 Javascript
JS实现悬浮球只在一侧滑动并且是横屏状态下
2020/08/19 Javascript
jQuery实现日历效果
2020/09/11 jQuery
ES11屡试不爽的新特性,你用上了几个
2020/10/21 Javascript
JavaScript快速调试的两个技巧
2020/11/04 Javascript
js实现有趣的倒计时效果
2021/01/19 Javascript
python爬取网站数据保存使用的方法
2013/11/20 Python
Python中super函数的用法
2017/11/17 Python
Python中矩阵库Numpy基本操作详解
2017/11/21 Python
python放大图片和画方格实现算法
2018/03/30 Python
Python基本socket通信控制操作示例
2019/01/30 Python
简单了解python字符串前面加r,u的含义
2019/12/26 Python
html5适合移动应用开发的12大特性
2014/03/19 HTML / CSS
迟到检讨书300字
2014/02/14 职场文书
企业管理毕业生求职信范文
2014/03/07 职场文书
合作意向书格式及范文
2014/03/31 职场文书
管理提升方案
2014/06/04 职场文书
借名购房协议书范本
2014/10/06 职场文书
2015年计算机教学工作总结
2015/07/22 职场文书
新党员入党决心书
2015/09/22 职场文书
Apache Pulsar集群搭建部署详细过程
2022/02/12 Servers