PyQt5工具可以快速实现简单的界面开发,包括界面设计、布局管理以及业务逻辑实现(信号与槽)。简单说就是使用PyQt5工具可以快速画一个控件摆放整齐、界面整洁有序、布局合理的界面。

课程目标

可以动手实现简单的GUI程序。系列文章主要以动手实践案例讲解为主。

课程对象

会一些python基本语法但不懂PyQt的小白

课程内容

第1节:PyQt5环境搭建和配置。工欲善其事必先利其器嘛~~

第2节:Qt Designer工具的使用。通过一个需求实现描述工具使用。都是拖拽布局,不写代码。。不要怂

第3节:Qt Designer工具的布局管理。如何把界面控件摆放整齐。四种常用布局方法。。也不写代码。。哈哈

第4节:PyQt信号与槽的使用。让程序动起来。。让他替你做你想做的事情。。

第5节:PyQt5基本控件使用介绍。了解那些被你拖来拖去的组件的基本使用方法。。深入认识一下他们

第6节:PyQt5小需求实践案例。让你学习的内容转化成可输出的成果。。

本文内容

本文主要第1节 PyQt5环境搭建和配置。主要内容包括:

(1)工具版本的选择,包括PyQt版本和Python软件版本。

(2)Python、PyQt5以及Qt Designer工具的安装。Qt Designer是PyQt的可视化GUI设置工具。

(3)PyCharm上配置Qt Designer和PyUIC工具。

选择PyQt原因

(1)PyQt可以通过拖拽实现界面开发,而不是只能代码实现。这样界面实现效率就高多了。

(2)控件丰富。支持跨平台。

(3)方便打包发布。可以利用Pyinstaller打包成二进制文件。在未安装Python软件电脑上运行。

选择Python3和PyQt5原因

PyQt官网提供了PyQt4和PyQt5两种主流版本。PyQt5不兼容PyQt4。建议选择PyQt5原因

(1)官方对PyQt4不再有重大更新和维护。

(2)PyQt5对一些模块进行了重新构建。同时PyQt5对网页的支持能力更好。

(3)PyQt5支持新式的信号和槽,使用更简单。

选择Python3原因:PyQt5对Python3支持较好,官方默认只提供支持Python3版本的安装包。如果使用Python2,要自己编译,比较麻烦。

Python3.X软件和PyQt5安装

(1)Python官网下载Python3.X 32位最新版本。获取路径:Python官网,下载32位版本的原因是通常pyqt工具开发完成的程序都需要编译成可执行程序发布。而使用32位额Pyinstaller打包发布exe软件在32位和64位电脑都能运行。如果是64位版本,就只能运行在64位版本电脑。

(2)执行下载的pyhon软件安装。勾选"Add Python3.7 to Path"。其他一路Next安装完成。默认会安装一键式工具pip。

(3)pip工具镜像源配置。配置方法如下:

a、在cmd窗口下执行echo %HOMEPATH%获取用户家目录,并在该目录下创建pip目录。

b、在pip目录下创建pip.ini文件。记住,后缀必须是.ini格式。并在该文件中写入如下内容。

[global]
index-url = http://pypi.douban.com/simple
[install]
trusted-host = pypi.douban.com

c、配置完成。执行pip install xlrd测试安装是否成功。如果失败,参考配置指导参考<Python开发环境搭建指导>检查,里面有详细步骤。

PyQt5工具安装

(1)使用pip工具安装PyQt5工具。执行pip install PyQt5

(2)安装Qt Designer图形界面开发工具。执行pip install PyQt5-tools

工具安装完成后的路径在..\Python\Python37-32\Lib\site-packages

(3)环境变量配置。将PyQt5-tools的安装目录添加到系统环境变量path。添加路径:我的电脑 -> 属性->高级->系统设置->高级->单击环境变量。在系统变量path添加PyQt5-tools完整路径。如下图所示:

(4)打开cmd窗口,执行designer。其实也可以将designer.exe设置快捷家到桌面。

Qt Designer主界面如下:

PyCharm配置Qt Designer

PyCharm是开发Python程序主流常用的IDE。为方便调用Qt Designer实现界面开发和编译相应完成,可以在PyCharm配置Qt Designer和PyUIC。

(1)配置Qt Designer。PyCharm -> 菜单File -> Settings -> Tools -> External Tools -> +号,进行添加。 参数配置说明:

Name:Qt Designer。方便记忆。实际可以任意取值。

Program:designer.exe程序绝对路径。根据实际安装路径填写。

Parameters:$FileDir$\$FileName$。固定取值。

Working directory: $FileDir$。固定取值。

(2)配置PyUIC。该工具是用于将Qt Designer工具开发完成的.ui文件转化为.py文件。配置打开路径同Qt Designer。参数配置说明:

Name:PyUIC。方便记忆。实际可以任意取值。

Program:python.exe程序绝对路径。根据实际安装路径填写。

Parameters:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py。固定取值。

Working directory: $FileDir$。固定取值。

(3)测试Qt Designer和PyUIC配置是否成功。打开路径:菜单栏Tools -> External Tools ->Qt Designer/PyUIC

点击Qt Designer,打开Designer程序主界面如下。将左侧Widget Box中Push button空间拖到主界面,双击空间修改名称为test。另存为名称work.ui。默认后缀就是.ui。

打开PyUIC,自动完成work.ui文件的转换。生成文件名为work.ui。

文件转换成功后,可以在project目录中查看。如下

配置成功。完成

命令行打开designer和转换.ui文件

除了集成到Pycharm工具使用,也可以采用命令行方式打开designer和通过命令转换.ui文件为.py文件,我个人习惯使用这种方法。方法如下:

(1)设置designer为桌面快捷方式。designer路径在${python安装目录}/Lib/site-packages/pyqt5_tools/designer.exe

(2)假设designer.exe开发完成的界面文件为work.ui。切换到work.ui目录并执行如下命令转换:

pyuic5  -o work.py work.ui

小结

学习完本文课程,就可以完成PyQt5工具安装和配置。为PyQt5开发界面迈出了最重要的一步。下一节就可以开始通过Qt Designer工具实现界面开发了。

[ PyQt入门教程 ] PyQt5环境搭建和配置的更多相关文章

  1. PHP入门教程-开发环境搭建

    1.PHP简介: PHP是能让你生成动态网页的工具之一.PHP网页文件被当作一般HTML网页文件来处理并且在编辑时你可以用编辑HTML的常规方法编写PHP. 2.学习需要基础: a.HTML b.Ja ...

  2. MongoDB最简单的入门教程之一 环境搭建

    MongoDB是近年来非常流行的一个介于关系数据库和非关系数据库之间的解决方案,特别广泛地应用于国内很多互联网公司,是非关系数据库当中功能最丰富,最像关系数据库的. MongoDB支持的数据结构非常松 ...

  3. ASP.NET MVC3入门教程之环境搭建

    本文转载自:http://www.youarebug.com/forum.php?mod=viewthread&tid=90&extra=page%3D1 什么是ASP.NET MVC ...

  4. [ PyQt入门教程 ] PyQt5信号与槽

    信号和槽是PyQt编程对象之间进行通信的机制.每个继承自QWideget的控件都支持信号与槽机制.信号发射时(发送请求),连接的槽函数就会自动执行(针对请求进行处理).本文主要讲述信号和槽最基本.最经 ...

  5. [ PyQt入门教程 ] PyQt5基本控件使用:消息弹出、用户输入、文件对话框

    本文主要介绍PyQt界面实现中常用的消息弹出对话框.提供用户输入的输入框.打开文件获取文件/目录路径的文件对话框.学习这三种控件前,先想一下它们使用的主要场景: 1.消息弹出对话框.程序遇到问题需要退 ...

  6. [ PyQt入门教程 ] PyQt5中多线程模块QThread使用方法

    本文主要讲解使用多线程模块QThread解决PyQt界面程序唉执行耗时操作时,程序卡顿出现的无响应以及界面输出无法实时显示的问题.用户使用工具过程中出现这些问题时会误以为程序出错,从而把程序关闭.这样 ...

  7. [ PyQt入门教程 ] PyQt5基本控件使用:单选按钮、复选框、下拉框

    本文主要介绍PyQt5界面最基本使用的单选按钮.复选框.下拉框三种控件的使用方法进行介绍. 1.RadioButton单选按钮/CheckBox复选框.需要知道如何判断单选按钮是否被选中. 2.Com ...

  8. [ PyQt入门教程 ] PyQt5中数据表格控件QTableWidget使用方法

    如果你想让你开发的PyQt5工具展示的数据显得整齐.美观.好看,显得符合你的气质,可以考虑使用QTableWidget控件.之前一直使用的是textBrowser文本框控件,数据展示还是不太美观.其中 ...

  9. Cesium入门2 - Cesium环境搭建及第一个示例程序

    Cesium入门2 - Cesium环境搭建及第一个示例程序 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 验 ...

随机推荐

  1. [Err] 1146 - Table 'performance_schema.session_status' doesn't exist已解决

    刚刚接触MySQL,就往数据库添加数据,就遇到这个问题 解决方案就是找到你安装MySQL的bin目录 然后在cmd输入 mysql_upgrade -u root -p --force 回车,然后输入 ...

  2. Ajax中post与get的区别

    get和post都是向服务器发送一种请求,只是发送机制不同 . 1. GET可以通过在请求URL上添加请求参数, 而POST请求则是作为HTTP消息的实体内容发送给WEB服务器. 2. get方式请求 ...

  3. Spring特点

    1.非侵入式所谓非侵入式是指,Spring框架的API不会在业务逻辑上出现,即业务逻辑是POJO(Plain Old Java Objects).由于业务逻辑中没有Spring的API,所以业务逻辑可 ...

  4. 为mysql数据备份建立最小权限的用户

    mysqldump 备份所需要的最小权限说明: 1.对于table,mysqldump 最少要有select权限 2.如果要产生一份一致的备份,mysqldump 要有lock tables权限 3. ...

  5. vue.js与后台模板引擎“双花括号”冲突时的解决办法

    后台渲染模板如swig,也使用“{{ }}“作为渲染,与前端vue的产生冲突,此时只要在新建Vue对象时,添加delimiters: ['${', '}'],就搞定了,代码如下 <!DOCTYP ...

  6. 【设计模式】行为型01策略模式(strategy patten)

    学设计模式一段时间了,有些懂了,有些半知半解,通过写笔记博客的方式总结一下: 关于策略模式,我的个人理解就是将一些经常变动的算法独立抽取出来,可以是一个方法,也可以是一个策略类,这样,如果有需求变更, ...

  7. 学习 GitHub 有什么好处?

    layout: post title: "学习 GitHub 有什么好处?" date: 2018-04-15 19:20:20 +0800 --- 鸣谢:王顶 老师(河北经贸大学 ...

  8. TreeView虚拟化跳转

    使用ItemContainerGenerator.ContainerFromItem方法可以获取对应数据的UIElement . 但是如果使用了虚拟化技术,超出可见区域的UIElement就获取不到了 ...

  9. C++中 =default,=delete用法

    =default: 用于显式要求编译器提供合成版本的四大函数(构造.拷贝.析构.赋值) 例如: class A{ public: A() = default; A(const A& a) = ...

  10. 究竟什么是Windows句柄

    图解说明——究竟什么是Windows句柄     这里需要说明: 1.这里将句柄所能标识的所有东西(如窗口.文件.画笔等)统称为“对象”. 2.图中一个小横框表示一定大小的内存区域,并不代表一个字节, ...