前言

文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

作者:朱淑强

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun

一个优秀的程序必须要有友好的可视化交互界面GUI。Python有很多GUI开发的框架,像我之前常用的是自带的Tkinter,对于一些小功能不复杂的程序是绰绰有余的,但对于功能稍微复杂,还是希望找到更简便快捷的GUI设计框架。PyQt是QT的Python版本,现在最新的版本已经是PyQt5,是Python的GUI设计之中应用较为广泛的开发框架。本文将基于广泛应用的Pycharm,搭建PyQT5的开发环境。

使用的软件版本:

  • Python 3.6
  • PyCharm Community Edition 2019.3.1 x64

1.安装PyQt模块

首先需要安装模块PyQt5

PyQt5不再提供QtDesigner等工具,需要再安装模块pyqt5-tools

2. 在Pycharm中配置PyQt5的开发环境

需要在Pycharm中配置PyQt5的开发环境,采用的是添加外部工具的方法来实现,需要添加两个外部工具,一个是QtDesinger,用于界面设计,另一个是PyUIC,用于编译UI文件编程py文件。

打开Pycharm——File——Settings——Tools——External Tools,点击+号,按照如下设置外部工具:

2.1 配置QtDesinger

需要填写的说明:

Name:QtDesinger

Program:C:\Program Files\Python36\Lib\site-packages\PyQt5-tools\designer\designer.exe

Working directory:$ProjectFileDir$

意思是该外部工具定义名称为QtDesinger,外部工具的地址需要自己手动选择,一般为在Python的安装路径中,最后的Working directory设置为当前项目工作目录即可,即创建的UI文件会存储在目录下。

2.2 配置PyUIC

打开QtDesinger,即能看到GUI设计界面:

3. 基本使用

使用QtDesinger,设计一个计算器界面,最后保存该文件名为PyQT_Form,此时该文件应该是xml的通用格式,文件名后缀为ui。

返回Pycharm界面,右键PyQT_Form.ui,弹出的菜单中选择External Tools——PyUIC,PyQT_Form.ui即编译成PyQT_Form.py。

但此时该界面py文件还不能运行,本着界面设计类和逻辑实现类代码分离的原则,需要写一个主运行的py文件,命名为main_run.py,可以参考如下:

main_run.py中继承了PyQT_Form.py的Ui_MainWindow类,同时又可以添加一些逻辑实现的代码,真正实现界面和逻辑实现的代码分析,后续修改界面,也不影响主程序的运行。

2020年最新Python教程:

如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?

说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。

以上这些教程小编已经为大家打包准备好了,希望对正在学习的你有所帮助!

获取方式,私信小编 “ 资料 ”,即可免费获取哦!

熬夜整理出来的干货:Python+Pycharm+PyQT5可视化程序设计入门的更多相关文章

  1. python+pycharm+PyQt5 图形化界面安装教程

    python图形化界面安装教程 配置环境变量 主目录 pip所在目录,及script目录 更新pip(可选) python -m pip install --upgrade pip ps:更新出错一般 ...

  2. 干货 | Bokeh交互式数据可视化快速入门

    Bokeh简介 Bokeh是一款交互式可视化库,在浏览器上进行展示. Bokeh可以通过Python(或其它语言),快速便捷地为大型流数据集提供优雅简洁的高性能交互式图表. 安装 在python中有多 ...

  3. Python3+Pycharm+PyQt5环境搭建

    操作系统:Windows 10 Python版本:3.7及以上版本均可 PyCharm:PyCharm 2019.3 1.安装 PyQt5 及其拓展工具. pip install pyqt5 pip ...

  4. 整理的最全 python常见面试题(基本必考)

    整理的最全 python常见面试题(基本必考) python 2018-05-17 作者 大蛇王 1.大数据的文件读取 ① 利用生成器generator ②迭代器进行迭代遍历:for line in ...

  5. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  6. 整理的最全 python常见面试题

      整理的最全 python常见面试题(基本必考)① ②③④⑤⑥⑦⑧⑨⑩ 1.大数据的文件读取: ① 利用生成器generator: ②迭代器进行迭代遍历:for line in file; 2.迭代 ...

  7. 史诗级干货-python爬虫之增加CSDN访问量

    史诗级干货-python爬虫之增加CSDN访问量 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多算法.机器学习干货 csdn:https://blog.csdn.net ...

  8. python,pycharm,anaconda之间的区别与联系 - python基础入门(2)

    Python环境配置-Pycharm下载/Anaconda安装 中我们已经完成了 Pycharm 和Anaconda 的安装.可能对于刚接触的小伙伴还是比较懵逼的,一会python一会Anaconda ...

  9. 06 windows安装Python+Pycharm+Scrapy环境

    windows安装Python+Pycharm+Scrapy环境 使用微信扫码关注微信公众号,并回复:"Python工具包",免费获取下载链接! 一.卸载python环境 卸载以下 ...

随机推荐

  1. cmdb采集数据的版本

    在局部配置文件中配置MODE=' agent',或者MODE=‘ssh’,或者MODE=‘’saltstack ',  实现只需要修改这个配置,就会使用对应的方案进行采集数据 第一种版本: 启动文件中 ...

  2. Linux开机启动程序rc.local

    目录 1./etc/rc.local是/etc/rc.d/rc.local的软链接 2.rc.local文件的原始内容 3.rc.local文件的配置 4.应用经验 5.版权声明 在CentOS7中, ...

  3. 解析“60k”大佬的19道C#面试题(上)

    解析"60k"大佬的19道C#面试题(上) 先略看题目: 请简述async函数的编译方式 请简述Task状态机的实现和工作机制 请简述await的作用和原理,并说明和GetResu ...

  4. 你需要了解的 HTTP Status Code

    你需要了解的 HTTP Status Code Intro 现在前后端分离的开发模式越来越流行,后端负责开发对应的 API,前端只需要 关注前端页面的数据展示和前端逻辑即可. 对于前后端分离这种开发模 ...

  5. element-ui 的 单选按钮(Radio) 怎么取消文本显示?

    方法一:<el-radio class="radio" v-model="radio" :label="1"> </el- ...

  6. HDU-1051 一个DP问题

    Problem Description There is a pile of n wooden sticks. The length and weight of each stick are know ...

  7. python分布式接口,参数化实战二

    1,先看一下接口测试用例 2,文件1:写get和post模板 import requestsclass PostGetModels: def isMethod(self,url,data,method ...

  8. js的预编译

    JavaScript不会完全按照代码的顺序执行,在执行之前会对定义的函数和变量先来一边所谓的预编译处理. 先来说下对变量的预处理: console.log(a) //undefined var a = ...

  9. 思考设计SQL优化方案

    一.优化的哲学 注:优化有风险,涉足需谨慎 1.优化可能带来的问题? 优化不总是对一个单纯的环境进行,还很可能是一个复杂的已投产的系统: 优化手段本来就有很大的风险,只不过你没能力意识到和预见到: 任 ...

  10. js拖拽效果的实现及原理

    元素拖拽分成3个步骤:按下鼠标,移动鼠标,松开鼠标. 拖拽原理:按下拖拽元素后开始监听文档中鼠标移动事件,然后再监听鼠标松开事件:鼠标移动时,元素div要随着鼠标一起移动,需要计算元素div位移的距离 ...