Windows下pycharm配置QtDesigner、PyUic、PyRcc

前言:

在配置QtDesigner、PyUic、PyRcc之前,咱们先了解一下这三个工具在PyQt5里面的作用
Qt Designer、PyUIC、PyRCC 在 PyQt5 开发中扮演着重要的角色,它们分别用于设计界面、将设计的界面转换为 Python 代码以及管理资源文件。下面将详细解释它们各自的作用和使用方式。

Qt Designer
Qt Designer 是一个强大的图形界面工具,用于设计和构建图形用户界面(GUI)。它提供了一个可视化的界面,通过拖放的方式来添加和布局各种控件(如按钮、文本框、列表等),使得开发者可以不编写任何代码或只需少量代码即可设计复杂的GUI界面。Qt Designer 保存的文件是具有 .ui 扩展名的 XML 格式文件,它描述了界面的结构和属性,但不包含实际的逻辑代码。
如下图,我们可以使用QtDesigner来设计我们的UI界面
在这里插入图片描述

PyUIC
PyUIC 是一个命令行工具,用于将 Qt Designer 创建的 .ui 文件转换成 Python 代码。这样,开发者可以在 PyQt5 应用程序中直接使用这些生成的 Python 类来创建和操作GUI界面。这个转换过程确保了设计与实现的分离,使得开发者可以在不影响后端逻辑的情况下独立修改GUI界面。

转换的基本命令格式如下:

pyuic5 -x My.ui -o my_ui.py

其中,My.ui是 Qt Designer 创建的 .ui 文件,my_ui.py是转换后生成的 Python 代码文件,下图可以看到转换成的ui就成为python的代码,可以在我们编写其他槽函数的时候导入这个类。
在这里插入图片描述

PyRCC
PyRCC 是 PyQt5 的资源编译器,用于将资源文件(如图像、图标、翻译文件等)编译成 Python 代码,以便 PyQt5 应用程序可以直接访问这些资源。资源文件通常保存为 .qrc 文件,这是一个 XML 格式的文件,描述了包含的资源及其对应的路径。

使用 PyRCC,开发者可以将资源文件编译成 Python 代码,然后在 PyQt5 应用中导入和使用这些资源。这种方法使得管理和访问应用程序资源变得更加方便和高效。
资源编译的基本命令格式如下:

pyrcc5 input.qrc -o resources_rc.py

1 安装 PyQt5

pip install PyQt5

如果安装不成功,也可以试试阿里云或者豆瓣的源

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

2 安装 PyQt5-tools

PyQt5 不在提供常用的Qt工具,比如图形界面开发工具 Qt Designer、国际化翻译 工具 Liguist,所以还需要使用如下命令安装常用的Qt工具。

pip install PyQt5-tools

或者

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

安装完成之后,我的designer的目录是这个
在这里插入图片描述

3.配置QtDesigner

点击pycharm的File–>Setting–>Tools 找到External Tools,点击“+”号
在这里插入图片描述
点击“加号”按钮新建工具,弹出工具配置界面:在“Name”一栏填写“Qt-Designer”;在“Program”一栏填写designer.exe文件位置,我这里位置为就是我们刚刚看的qtdesigner的位置:“D:\python38\Lib\site-packages\qt5_applications\Qt\bin\qtdesigner”(需根据实际情况填写),最后点击“OK”,如下图所示
Name 填:QtDesigner
Working directory填写:$ProjectFileDir$
在这里插入图片描述

3.1 测试是否可以打开:Tool->External Tools-> QtDesigner

在这里插入图片描述
打开是如下界面说明正常
在这里插入图片描述

4.配置PyUic

首先还是按照添加qtdesigner的步骤一样,点击"+"号添加
Name: PyUic
Program: D:\python38\python.exe
注意这里是你的python安装后的python执行文件的目录,这里也有人配置pyuic5.exe的目录 也可以,我这里就介绍这一种。
pyuic目录:
在这里插入图片描述

Arguments:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
Working directory : $FileDir$
添加完毕之后点击ok
在这里插入图片描述

4.1 测试:

选择我们的UI文件,右键->External Tools->PyUic
在这里插入图片描述
如下即代表成功
在这里插入图片描述

5.配置PyRCC

首先还是按照添加qtdesigner的步骤一样,点击"+"号添加
Name: PyRcc
Program: D:\python38\Scripts\pyrcc5.exe
Arguments:$FileName$ -o $FileNameWithoutExtension$_rc.py
Working directory : $FileDir$
添加完毕之后点击ok,pyrcc.exe一般都在python安装目录
在这里插入图片描述

在这里插入图片描述

5.1 测试

执行完成之后会生成一个py文件
在这里插入图片描述

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

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

相关文章

Python性能测试框架Locust实战教程

01、认识Locust Locust是一个比较容易上手的分布式用户负载测试工具。它旨在对网站(或其他系统)进行负载测试,并确定系统可以处理多少个并发用户,Locust 在英文中是 蝗虫 的意思:作者的想法是在测试期间,放…

使用IDEA的反编译插件 反编译jar包

反编译插件介绍 安装IDEA后, 一般自带反编译插件, Java Bytecode Decompiler 如果没有可以自己安装下 1.首先找到插件的jar包, 在IDEA安装目录的plugins文件夹下 D:\IntelliJ IDEA 2021.2.2\plugins\java-decompiler\lib 2.运行java命令, 指定插件的jar包目录和你要反编译的ja…

C语言从入门到实战----数据在内存中的存储

1. 整数在内存中的存储 在讲解操作符的时候,我们就讲过了下⾯的内容: 整数的2进制表⽰⽅法有三种,即 原码、反码和补码 有符号的整数,三种表⽰⽅法均有符号位和数值位两部分,符号位都是⽤0表⽰“正”,⽤…

【C++】用哈希桶模拟实现unordered_set和unordered_map

目录 一、哈希介绍1.1 哈希概念1.2 哈希冲突解决1.2.1 闭散列1.2.2 开散列 二、哈希桶2.1 实现哈希桶2.1.1 构造节点和声明成员变量2.1.2 构造与析构2.1.3 仿函数2.1.4 查找2.1.5 插入2.1.6 删除 2.2 kv模型哈希桶源代码 三、改造哈希桶3.1 beginend3.2 迭代器3.2.1 前置 3.3 改…

【C语言进阶篇】编译和链接

【C语言进阶篇】编译和链接 🥕个人主页:开敲🍉 🔥所属专栏:C语言🍓 🌼文章目录🌼 编译环境与运行环境 1. 翻译环境 2. 编译环境:预编译(预处理)编…

动态规划标题

题目:猫粮规划 每种食物都有两种状态,记忆化dfs当然可以,但是你是否觉得这个题很想之前讲过的“小A点菜 ”?那道题问的是对于那些菜要花光她的钱,一共有多少方案?这道题问的是一个区间罢了,那么…

Swagger3探索之游龙入海

引言 后端开发中常用的接口调用工具一般使用Postman、ApiPost工具&#xff0c;但后期需要与前端联调&#xff0c;要补充接口文档花费大量时间&#xff0c;此时Swagger3应运而生&#xff0c;大大提高沟通交流的效率。 引用依赖 <!-- Swagger3 调用方式 http://ip:port/swa…

已后悔!为什么不早点用多微信管理工具?

对于有多个微信号的人来说&#xff0c;每次都要在不同微信号和设备之间来回切换&#xff0c;实在是既麻烦又容易搞混。 这时候&#xff0c;只需要一个多微信管理工具——微信管理系统就能解决啦&#xff01; 1、多号同时登陆聚合聊天 它支持多个微信号同时登录在同一个页面上…

【已解决】Vue 3+TS项目,无法找到模块“XXX”的声明文件,项目报错无法找到声明文件

前言 最近在做vue 3 TS项目&#xff0c;创建项目时需要引入vue-router 4&#xff0c;在main根文件中引入路由时出现了无法找到引入文件的报错。 解决 最后发现是创建router文件中的index文件时错误的创建为了.js文件&#xff0c;但是在创建框架时默认使用的是TS。将文件类型…

容器网络隔离验证

结论&#xff0c;可以直接扫描内网路由能通的机器。 1.节点1 192.168.55.6 2.节点2 192.168.55.5 3.非节点3 192.168.55.3

线上MQ消息堆积了怎么处理?被面试官问麻了

面试官&#xff1a;我看你简历上有使用RabbitMQ的经历&#xff0c;那你能说说如果现在线上MQ消息大量堆积&#xff0c;需要你处理&#xff0c;你要怎么解决&#xff1f; 小小&#xff1a;把队列删了这样就看不到堆积了。 面试官&#xff1a;好好好&#xff0c;果然是百年难得一…

全面复习C++,为你即将步入职场的面试铺就胜利之路!

写在前面&#xff1a; C作为一门广泛应用的编程语言&#xff0c;掌握它将是你在面试中获得成功的关键。如果你正在学习C&#xff0c;或者即将毕业踏入职场&#xff0c;迎接新的挑战和机遇而。这里&#xff0c;为了方便你的复习&#xff0c;特此为你录制了一场全面复习C的视频&…

语义分割蒸馏1:基于注意力引导的特征蒸馏方法(Attn)

与现有的常用的从教师向学生提取知识的复杂方法相比,所提出的方法展示了一种简单而强大的方法的功效,该方法可以利用精细的特征图来转移注意力。所提出的方法已被证明在提取丰富信息方面是有效的,在作为密集预测任务的语义分割方面优于现有方法。所提出的注意力引导特征提取…

glBindTexture函数的理解

简单的说opengl的设计思想&#xff0c;实现较早&#xff0c;并不是基于对象&#xff0c;所以API操作&#xff0c; 总是以奇怪的enum枚举类型来作为操作对象。形成的编程范式就是先bind绑定到一个named obj&#xff08;其实是个整数&#xff09;并在内部创建一个该target类型对象…

通俗易懂:解释MySQL中DCL(数据控制语言)的作用。

MySQL中的DCL&#xff08;Data Control Language&#xff09;是指用于管理和控制数据库系统中用户访问权限以及相关安全机制的一类SQL语言。DCL的主要作用在于确保数据库系统的安全性&#xff0c;允许数据库管理员和其他具有相应权限的用户来定义谁可以访问数据库&#xff0c;以…

Spring 日志规范

1、日志的作用 日志是在系统运行过程中关键的节点的数&#xff0c;这个些日志的记录方便当系统出现问题方便问题查找。 打印参数必须是有意义&#xff0c;连贯的。以方便快速定位问题。 2、日志打印规范 常规日志规范写法&#xff1a; logger.info("验证码: {} ",…

DreamPolisher、InternLM2 、AniArtAvatar、PlainMamba、AniPortrait

本文首发于公众号&#xff1a;机器感知 DreamPolisher、InternLM2 、AniArtAvatar、PlainMamba、AniPortrait DreamPolisher: Towards High-Quality Text-to-3D Generation via Geometric Diffusion We present DreamPolisher, a novel Gaussian Splatting based method wit…

Spring Boot 使用过滤器、拦截器、监听器

前言 作用 过滤器&#xff08;Filter&#xff09;&#xff1a;当有一堆请求&#xff0c;只希望符合预期的请求进来。拦截器&#xff08;Interceptor&#xff09;&#xff1a;想要干涉预期的请求。监听器&#xff08;Listener&#xff09;&#xff1a;想要监听这些请求具体做了…

【数据结构】树、二叉树与堆(长期维护)

下面是关于树、二叉树、堆的一些知识分享&#xff0c;有需要借鉴即可。 一、初识树&#xff08;了解即可&#xff09; 1.树的概念 概念&#xff1a;一种非线性数据结构&#xff0c;逻辑形态上类似倒挂的树 树的构成&#xff1a;由一个根左子树右子树构成&#xff0c;其中子树…

p8670题解

题目&#xff1a;求 $\sum_{i1}^n\sum_{j1}^n\gcd(i,j)$ 的值。推式子 ∑ i 1 n ∑ j 1 n gcd ⁡ ( i , j ) 2 \sum_{i1}^n\sum_{j1}^n\gcd\left(i,j\right)^2 i1∑n​j1∑n​gcd(i,j)2 ∑ i 1 n ∑ j 1 n ∑ k 1 n k 2 [ gcd ⁡ ( i , j ) k ] \sum_{i1}^n\sum_{j1}…