【PyQt5】环境配置

PyQt5 环境配置

  • 一、前言
    • 1.1 PyQt5介绍
    • 1.2 PyCharm集成Pyqt5
  • 二、pyqt5安装
  • 三、PyQt5-tools工具包安装
  • 四、常用工具环境配置
    • 4.1、环境变量配置
    • 4。2、验证是否安装成功
  • 五、pycharm中设置Qt工具(Qt Designer、PyUIC、PyRcc)
    • 5.1、配置Qt Designer
    • 5.2、配置PyUIC
    • 5.3 、配置PyRcc

一、前言

1.1 PyQt5介绍

Qt(官方发音 [kju:t])是一个跨平台的C++开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序

Qt 是纯 C++ 开发的,正常情况下需要先学习C语言、然后在学习C++然后才能使用Qt开发带界面的程序

多亏了开源社区使得Qt 还可以用Python、Ruby、Perl 等脚本语言进行开发。

Qt 支持的操作系统有很多,例如通用操作系统 Windows、Linux、Unix,智能手机系统Android、iOS, 嵌入式系统等等。可以说是跨平台的

QT官网:https://doc.qt.io/qt-5/index.html

PyQt的开发者是英国的“Riverbank Computing”公司。它提供了GPL(简单的说,以GPL协议发布到网上的素材,你可以使用,也可以更改,但是经过你更改然后再次发布的素材必须也遵守GPL协议,主要要求是必须开源,而且不能删减原作者的声明信息等)与商业协议两种授权方式,因此它可以免费地用于自由软件的开发。

PyQt可以运行于Microsoft Windows、Mac OS X、Linux以及Unix的多数变种上。

PyQt是Python语言的GUI(Graphical User Interface,简称 GUI,又称图形用户接口)编程解决方案之一

可以用来代替Python内置的Tkinter。其它替代者还有PyGTK、wxPython等,与Qt一样,PyQt是一个自由软件

文档相关地址:https://www.riverbankcomputing.com/software/pyqt/

比较不错的参考资料:https://wiki.python.org/moin/PyQt/Tutorials

  • Qt (C++ 语言 GUI ) PyQt = Python + Qt技术

  • Tkinter Python官方采用的标准库,优点是作为Python标准库、稳定、发布程序较小,缺点是控件相对较少。

  • wxPython 基于wxWidgets的Python库,优点是控件比较丰富,缺点是稳定性相对差点、文档少、用户少。

  • PySide2、PyQt5 基于Qt 的Python库,优点是控件比较丰富、跨平台体验好、文档完善、用户多。缺点是 库比较大,发布出来的程序比较大。

  • PyQt5 的开发者是英国的“Riverbank Computing”公司 , 而 PySide2 则是 qt 针对python语言提供的专门

1.2 PyCharm集成Pyqt5

很多情况下需要为程序设计一个GUI界面,在Python中使用较多的用户界面设计工具是PyQt。由于通常我们使用较多的IDE是PyCharm,为了方便地使用PyQt进行用户界面设计,这里总结了在PyCharm安装配置的简单安装方法。可能有人还不清楚这几个工具的用途,这里对要安装配置的依赖包和工具简介如下:

  • PyQt5:PyQt5是一套Python绑定Digia QT5应用的框架。Qt库是最强大的GUI库之一,PyQt5做为Python的一个模块,它有620多个类和6000个函数和方法。这是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括UNIX,Windows,Mac OS。PyQt5是双重许可。开发者可以在GPL和商业许可之间进行选择,详细可访问PyQt5的官方网站。

  • PyQt5-tools:PyQt5中没有提供常用的Qt工具,比如图形界面开发工具Qt Designer,PyQt5-tools中包含了一系列常用工具。

  • Qt Designer:可以通过Qt Designer来编写UI界面,Qt Designer的设计符合MVC的架构,其实现了视图和逻辑的分离,从而实现了开发的便捷。Qt Designer中的操作方式十分灵活,其通过拖拽的方式放置控件可以随时查看控件效果。Qt Designer随PyQt5-tools包一起安装,其安装路径在 “Python安装路径\Lib\site-packages\pyqt5-tools”下。

  • PyUIC:Qt Designer生成的.ui文件(实质上是XML格式的文件)可以通过pyuic5工具转换成.py文件。

  • PyRcc:在使用PyQt开发界面时,在Qt Designer中使用的图片等资源需要将其编译为py文件,这时需要用到PyRcc工具方便地将qrc文件转换为py文件。

二、pyqt5安装

pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple/

三、PyQt5-tools工具包安装

包含PyQt常用工具 Qt Designer、PyUIC、PyRcc

pip install PyQt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple/

四、常用工具环境配置

4.1、环境变量配置

其实这几个工具在安装PyQt5-tools的时候已经包括在目录中,只不过要在PyCharm中方便使用还需要一些配置步骤。首先为了保证Windows系统能够正确识别PyQt5-tools的常见命令,还需要将PyQt5-tools的安装目录添加到系统环境变量Path中。

  • 1.将PyQt5-tools的安装目录添加到系统环境变量Path中。
    在这里插入图片描述
  • 2.在环境变量界面中点击新建,新建名设为QT_PLUGIN_PATH,在安装目录中找到plugins文件夹路径(根据实际情况填写)D:\python\work\Excel_Utils\venv\Lib\site-packages\pyqt5_plugins,点击确定即可
    在这里插入图片描述

4。2、验证是否安装成功

1、打开pycharm,新建一个py文件,输入:

import sys
from PyQt5.QtWidgets import QWidget, QApplicationapp = QApplication(sys.argv)
widget = QWidget()
widget.resize(640, 480)
widget.setWindowTitle("Hello, PyQt5!")
widget.show()
sys.exit(app.exec())

2、点击运行,如果没有报错并且出现新的窗口"Hello, PyQt5!",则表示安装成功
在这里插入图片描述

五、pycharm中设置Qt工具(Qt Designer、PyUIC、PyRcc)

这里主要是配置两个工具,一个是绘图工具Qt Designer,直接以 HTML 形式绘制工具的界面 UI,另外一个是将 HTML 界面一键转换成 py 文件的工具PyUIC。

5.1、配置Qt Designer

首先配置第一个工具Qt Designer
1、打开pycharm,点击菜单栏“File”,弹出下拉框,选择“Setting”,弹出设置界面。在设置界面中选择“Tools”→“External Tools” 点击+号新建工具,之后会弹出工具配置界面

  • ①Name:自己设置扩展工具的名字,这里我设置为QTDesigner。
  • ②Program:填写 PyQtDesigner 安装的路径,也就是安装的 designer.exe 所在的路径,不同版本存储的路径可能不一样,得自己去 Python 的安装路径下面找到。例如:我安装后的路径在 D:\python\work\Excel_Utils\venv\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
  • ③Working directory :就填 F i l e D i r FileDir FileDir,比较方便的也可以点击右侧 Insert Macro…,然后找到 F i l e D i r FileDir FileDir。或者可以填写 P r o j e c t F i l e D i r ProjectFileDir ProjectFileDir。前者表示将当前.ui文件生成的.py文件储存到当前目录;后者表示将当前.ui文件生成的.py文件储存到项目主目录下,个人认为写前者即可。
    在这里插入图片描述

5.2、配置PyUIC

PyUIC(就是将绘制的界面UI转换成py文件的工具),步骤同理,只不过设置的参数有所改变

  • ①Program:填写pyuic5 安装的路径,也就是安装的 pyuic5 .exe 所在的路径,不同版本存储的路径可能不一样,得自己去 Python 的安装路径下面找到。例如:我安装后的路径在D:\python\work\Excel_Utils\venv\Scripts\pyuic5.exe
  • ②Arguments:填写如下:
$FileName$ -o $FileNameWithoutExtension$.py 

这条语句的意思是将选中的xxx.ui 文件转换为同名的xxx.py文件
需要特别注意的是,执行的时候需要右键选中对应的xxx.ui 文件,不然会出错的。

  • ③Working directory: F i l e D i r FileDir FileDir
    在这里插入图片描述

5.3 、配置PyRcc

与PyUIC配置相相似在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/809779.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gitee上传出现git did not exit cleanly (exit code 1)的错误

在最后push的时候出现下面的结果: 出现这个错误的原因有好多种,目前介绍博主遇到的两种: 在第一次进行push操作的时候,需要输入用户名和密码,如果输入错误,则最后可能会出现上述报错 解决方法:…

centos7安装 on-my-zsh

如下👇 yum install -y zsh chsh -s /bin/zsh yum install -y git sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" 重启即可生效啦~

Python爬虫怎么挣钱?6个Python爬虫赚钱方式,搞搞副业不是问题

1.最典型的就是找爬虫外包活儿 网络爬虫最通常的的挣钱方式通过外包网站,做中小规模的爬虫项目,向甲方提供数据抓取,数据结构化,数据清洗等服务。新入行的程序员大多都会先尝试这个方向,直接靠技术手段挣钱&#xff0…

Oladance、南卡、Cleer开放式耳机好不好用?深度测评剖析实力王!

​近期,不少朋友都在询问如何挑选适合自己的开放式耳机。面对市场上众多品牌的开放式耳机,它们在音质、舒适度和性能上都有所差异,挑选一款合适的耳机对于音乐爱好者来说尤为重要。购买到品质不达标的耳机可能会影响音乐体验,甚至…

sonar搭建(linux系统)

前景 静态代码扫描是CI/CD中重要的一环,可以在代码提交到代码仓库之后,在CI/CD流程中加入代码扫描步骤,从而及时地对代码进行质量的检查。这可以有效地降低后期维护成本,优化产品质量,提高产品交付速度。同时&#xf…

浅尝一下ECS(Entity Component System)(学习笔记)

参考文章:浅谈Unity ECS(一)Uniy ECS基础概念介绍:面向未来的ECS - 知乎 (zhihu.com) 视频链接:【青幻译制】GDC讲座系列之三 守望先锋的游戏架构和网络代码_哔哩哔哩_bilibili 云风的 BLOG: 浅谈《守望先锋》中的 E…

保证线程安全的10个小技巧分享

对于从事后端开发的同学来说,线程安全问题是我们每天都需要考虑的问题。 线程安全问题通俗的讲:主要是在多线程的环境下,不同线程同时读和写公共资源(临界资源),导致的数据异常问题。 比如:变…

家居网购项目(一)

文章目录 1.前置知识1.项目开发阶段2.Java经典三层架构3.项目具体分层(包方案)4.MVC 2.开发环境搭建1.新建普通javaweb项目,导入jar包2.创建项目结构3.搭建前端页面 3.会员注册前端js校验1.需求分析2.代码login.html 3.结果4.调试阶段1.验证信…

LeetCode 题目:两个总和

LeetCode 题目:两个总和 描述: 编写一个函数,输入为一个整数数组nums和一个目标整数target,要求找到数组中两个数的和等于target,并返回这两个数的索引。 函数定义: def two_sum(nums: List[int], targe…

Java多线程开发——基础篇

目录 1.基本概念 2.创建线程方式 2.1直接建立线程 2.2实现Runnable接口 3.3实现Callable接口 3.4 了解Future接口 Future模式主要角色及其作用 3.5实例化FutureTask类 3.实现线程安全 3.1定义 3.2不安全原因 3.3解决方案 3.4volatile与synchronized区别 4.极端情…

Docker 学习笔记(三):Centos7 中 Docker 使用,镜像、容器,以及操作等常用命令小结

一、前言 记录时间 [2024-4-7] 前置文章: Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识 Docker学习笔记(二):在Linux中部署Docker&#…

(Java)数据结构——排序(第一节)堆排序+PTA L2-012 关于堆的判断

前言 本博客是博主用于复习数据结构以及算法的博客,如果疏忽出现错误,还望各位指正。 堆排序(Heap Sort)概念 堆排序是一种基于堆数据结构的排序算法,其核心思想是将待排序的序列构建成一个最大堆(或最小…

从库延迟案例分析

背景介绍 近来一套业务系统,从库一直处于延迟状态,无法追上主库,导致业务风险较大。从资源上看,从库的CPU、IO、网络使用率较低,不存在服务器压力过高导致回放慢的情况;从库开启了并行回放;在从…

Python —— 简述

Houdini Python | 笔记合集 - 知乎 Houdini内置三大语言: 表达式,主要用于节点参数控制,可实现跨模块控制;vex,速度最快(比表达式和Python快一个数量级),非常适合密集型计算环境&…

【React】Ant Design社区扩展库之分割面板:react-resizable-panels

主角:react-resizable-panels 简介:来之Ant Design官方文档社区精选组件 1、效果 2、环境 react-resizable-panels: ^2.0.16next: 14.1.3react: ^18 3、安装 # npm npm install react-resizable-panels# yarn yarn add react-resizable-panels# pnpm …

Docker学习笔记(二):在Linux中部署Docker(Centos7下安装docker、环境配置,以及镜像简单使用)

一、前言 记录时间 [2024-4-6] 前置文章:Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识 在上文中,笔者进行了Docker概述,介绍其历史、优势、作用&am…

《三》按钮---PushButton和信号槽机制

QPushButton按钮用法详解 按钮是 GUI 开发中最常用到的一种控件,作为一款著名的 GUI 开发框架,Qt 提供了很多种按钮,比如 QPushButton(普通按钮)、QRadioButton(单选按钮)、QToolButton&#x…

对LSTM的通俗易懂理解--可变权重

RNN的问题:长期依赖,即对短期的数据敏感,对比较远的长期数据不敏感,这是因为RNN隐藏状态权重在不同时刻是共享相同的,随着时间步的增加,梯度会指数级地衰减或者增长,导致梯度消失或者爆炸&#…

【黑马头条】-day06自媒体文章上下架-Kafka

文章目录 今日内容1 Kafka1.1 消息中间件对比1.2 kafka介绍1.3 kafka安装及配置1.4 kafka案例1.4.1 导入kafka客户端1.4.2 编写生产者消费者1.4.3 启动测试1.4.4 多消费者启动 1.5 kafka分区机制1.5.1 topic剖析 1.6 kafka高可用设计1.7 kafka生产者详解1.7.1 同步发送1.7.2 异…

配置vlan和vlan间路由、配置vlan的ip和vrrp、mstp和主次根

简单的通信实验 拓扑图: 1.配置vlan和链路聚合 Sw1 & sw2 undo info-center enable vlan batch 10 20 30 40 int eth-trunk 1 trunkport g 0/0/1 to 0/0/2 port link-type trunk port trunk allow-pass vlan 10 20 30 40 int g0/0/3 port link-type trunk p…