VSCode + PYQT5 + QtDesigner 环境搭建和测试
目的:编写Python桌面应用程序。
备注:也可以选择VS2017+QtDesigner ,但更喜欢VSCode
第1步:安装PyQt5和PyQt5-tools
pip3 install -i https://mirrors.aliyun.com/pypi/simple/ PyQt5
pip3 install -i https://mirrors.aliyun.com/pypi/simple/ PyQt5-tools
第2步:找到QtDesigner 安装路径
一般会自动安装在python安装目录中,如果安装了Anaconda3,则将会在如下Anaconda3路径中找到:
E:\Soft_dp\Anaconda3\Lib\site-packages\pyqt5_tools
将该文件夹中designer.exe生成桌面快捷方式,方便日后制作.ui文件。
第3步:打开designer.exe,并绘制你想要的UI界面,如下图所示:

绘制完后,起个名字,保存到你准备制作该项目的文件夹中,比如:welcome.ui
第4步:用VSCode转化.ui文件为.py文件
(1)打开VSCode,打开welcome.ui刚才存放的那个工程文件夹。
(2)在welcome.ui上右键选择如下图红色圈内操作。(该选项需要VSCode提前安装PYQT Integration扩展)

点击后,会自动生成一个叫:UI_welcome.py的文件,里面就是刚才绘制界面的UI类。
第5步:新建一个.py文件,用于启动程序,并调用刚才制作的UI类,必要代码和解释如下:
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import *
from PyQt5.QtWidgets import QFileDialog, QMessageBox, QDockWidget, QListWidget
from PyQt5.QtGui import *
from Ui_welcome import Ui_MainWindow #导入创建的GUI类
#自己建一个mywindows类,mywindow是自己的类名。QtWidgets.QMainWindow:继承该类方法
class mywindow(QtWidgets.QMainWindow, Ui_MainWindow):
#__init__:析构函数,也就是类被创建后就会预先加载的项目。
# 马上运行,这个方法可以用来对你的对象做一些你希望的初始化。
def __init__(self):
#这里需要重载一下mywindow,同时也包含了QtWidgets.QMainWindow的预加载项。
super(mywindow, self).__init__()
self.setupUi(self)
if __name__ == '__main__': #如果整个程序是主程序
# QApplication相当于main函数,也就是整个程序(很多文件)的主入口函数。
# 对于GUI程序必须至少有一个这样的实例来让程序运行。
app = QtWidgets.QApplication(sys.argv)
#生成 mywindow 类的实例。
window = mywindow()
#有了实例,就得让它显示,show()是QWidget的方法,用于显示窗口。
window.show()
# 调用sys库的exit退出方法,条件是app.exec_(),也就是整个窗口关闭。
# 有时候退出程序后,sys.exit(app.exec_())会报错,改用app.exec_()就没事
# https://stackoverflow.com/questions/25719524/difference-between-sys-exitapp-exec-and-app-exec
sys.exit(app.exec_())
然后,直接按F5运行该文件,就会弹出刚才绘制的窗口:

VSCode + PYQT5 + QtDesigner 环境搭建和测试的更多相关文章
- Tensorflow object detection API ——环境搭建与测试
1.开发环境搭建 ①.安装Anaconda 建议选择 Anaconda3-5.0.1 版本,已经集成大多数库,并将其作为默认python版本(3.6.3),配置好环境变量(Anaconda安装则已经配 ...
- 【运维技术】kafka三实例集群环境搭建及测试使用
kafka三实例集群环境搭建及测试使用 单机搭建分为两部分:1. 软件安装启动 2. 软件配置 软件安装启动: # 切换到目录 cd /app # 获取kafka最新安装包,这边使用的是镜像地址,可以 ...
- Tensorflow object detection API(1)---环境搭建与测试
参考: https://blog.csdn.net/dy_guox/article/details/79081499 https://blog.csdn.net/u010103202/article/ ...
- C++调用Lua编程环境搭建及测试代码示例
C++调用Lua编程环境搭建及测试代码示例 摘要:测试环境是VS2005+LuaForWindows_v5.1.4-45.exe+WIN7 1.安装lua开发环境LuaForWindows_v5.1. ...
- 【转载】基于RedHatEnterpriseLinux V7(RHEL7)下SPEC CPU 2006环境搭建以及测试流程(之一)——介绍、安装准备、安装、config文件以及运行脚本介绍
基于RedHatEnterpriseLinux V7(RHEL7)下SPEC CPU 2006环境搭建以及测试流程(之一)--介绍.安装准备.安装.config文件以及运行脚本介绍 其他 2018-0 ...
- Mybatis环境搭建及测试
1.新建java project,导入相应jar包 本次使用到的mybatis-3.2.7版本 mybatis需要jar包:mybatis-3.2.7.jar.lib文件下的依赖jar mysql驱动 ...
- PyQt5开发环境搭建
一 写在开头1.1 本节内容开个新坑—“PyQt5系列”,慢慢填.本文主要内容为PyQt5开发环境的搭建. 注意:PyQt 5.10以上的版本在Python 3.6中有BUG,PyQt 5.10版本是 ...
- vscode vue开发环境搭建
以前仅了解过VUE但没有真正上手过,现在因为工作需要准备再近几个月里系统的学习一下这款超火的前端框架,希望大佬们指教. ---------------------------------------- ...
- webDriver环境搭建与测试
1.安装jdk 2.安装eclipse 3.安装selenium 由于使用的是开发语言是java,因此需要安装java版的selenium包.下载地址:http://pan.baidu.com/s/1 ...
随机推荐
- Oracle 基本知识回顾
1.查找数据库所用的字符集编码:SELECT USERENV('language') FROM DUAL;2.将一个表中的字段,插入到这个表:INSERT INTO TABLE SELECT * FR ...
- 单区域OSPF路由协议实现网络区域互通
1.什么是OSPF协议? OSPF协议的全程是开放式最短路径优先协议,协议采用链路状态协议算法(LS协议) 2.OSPF vs RIP RIP路由协议是距离矢量路由选择协议,收敛速度慢,如果在一些大型 ...
- Apache Kafka: 优化部署的10个最佳实践
原文作者:Ben Bromhead 译者:江玮 原文地址:https://www.infoq.com/articles/apache-kafka-best-practices-to-opti ...
- java高级工程师开放面试题集<一>
临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么? 作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助. 特别说明,仅仅针对工作两年以上的java ...
- 【P2P浏览器】跟大家讨论一个想法
内容分享者通过这个浏览器来创建自己待分享的内容 任谁看了这些内容,就会在本地保存一份,成为一个节点只要任一个节点在线,别人就能看这些内容在线的节点越多,获取这些内容的速度越快 任何使用这个浏览器的人, ...
- C# ListView解读
一.ListView类 1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2) GridLines:设 ...
- K均值聚类
聚类(cluster)与分类的不同之处在于, 分类算法训练过程中样本所属的分类是已知的属监督学习. 而聚类算法不需要带有分类的训练数据,而是根据样本特征的相似性将其分为几类,又称为无监督分类. K均值 ...
- 【RabbitMQ】3、win7下安装RabbitMQ
RabbitMQ依赖erlang,所以先安装erlang,然后再安装RabbitMQ; erlang,下载地址:http://www.erlang.org/download RabbitMQ,下载地址 ...
- 浏览器与Tomcat交互
浏览器与Tomcat交互 Web开发者都知道在Tomcat下部署应用后启动Tomcat即可通过浏览器与Tomcat建立连接. 那么二者之间的连接建立过程是怎么样的呢?(在此,我们不具体讲述关于网络底层 ...
- logo.ico在html网页中的实现
<!doctype html><html> <head> <meta charset="utf-8"/> <title> ...