pycharm安装使用pyQt5

news2025/1/15 17:42:38

一、创建项目

在这里插入图片描述

二、安装pyqt5库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、配置PyCharm外部工具

打开File->settings->Tools->External Tools
在这里插入图片描述

1、配置QtDesigner

在这里插入图片描述

程序:D:\python3.7\Lib\site-packages\qt5_applications\Qt\bin\designer.exe//安装包的时候回自动下载,直接在包文件夹中找
工作目录:$FileDir$

2、配置PyUic

在这里插入图片描述

程序:D:\python3.7\python.exe//工具自己配置填写
实参:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
工作目录:$FileDir$

3、点击应用

在这里插入图片描述

四、使用工具

1、打开designer

Tools->External Tools->QtDesigner
在这里插入图片描述

2、放置控件

在这里插入图片描述
保存一下就会在工程中生成untitled.ui文件

3、生成py文件

此时需要将untitled.ui文件转换为.py文件,方便pycharm查阅,右键选择External Tools,选择pyuic ,将其转换,转换后可以在左侧看见untitled.py

在这里插入图片描述

4、显示生成的py文件

生成的文件不能显示,需要调用

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'untitled.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.widget = QtWidgets.QWidget(self.centralwidget)
        self.widget.setObjectName("widget")
        self.horizontalLayout.addWidget(self.widget)
        self.widget_2 = QtWidgets.QWidget(self.centralwidget)
        self.widget_2.setObjectName("widget_2")
        self.comboBox = QtWidgets.QComboBox(self.widget_2)
        self.comboBox.setGeometry(QtCore.QRect(330, 30, 171, 22))
        self.comboBox.setObjectName("comboBox")
        self.comboBox_2 = QtWidgets.QComboBox(self.widget_2)
        self.comboBox_2.setGeometry(QtCore.QRect(330, 60, 171, 22))
        self.comboBox_2.setObjectName("comboBox_2")
        self.comboBox_3 = QtWidgets.QComboBox(self.widget_2)
        self.comboBox_3.setGeometry(QtCore.QRect(330, 90, 171, 22))
        self.comboBox_3.setObjectName("comboBox_3")
        self.label = QtWidgets.QLabel(self.widget_2)
        self.label.setGeometry(QtCore.QRect(260, 40, 54, 12))
        self.label.setObjectName("label")
        self.label_2 = QtWidgets.QLabel(self.widget_2)
        self.label_2.setGeometry(QtCore.QRect(260, 70, 54, 12))
        self.label_2.setObjectName("label_2")
        self.label_3 = QtWidgets.QLabel(self.widget_2)
        self.label_3.setGeometry(QtCore.QRect(260, 100, 54, 12))
        self.label_3.setObjectName("label_3")
        self.horizontalLayout.addWidget(self.widget_2)
        self.horizontalLayout.setStretch(0, 1)
        self.horizontalLayout.setStretch(1, 2)
        self.gridLayout.addLayout(self.horizontalLayout, 0, 0, 1, 1)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.label.setText(_translate("MainWindow", "TextLabel"))
        self.label_2.setText(_translate("MainWindow", "TextLabel"))
        self.label_3.setText(_translate("MainWindow", "TextLabel"))

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()  # 这个是类名,名字根据自定义的情况变化
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())

五、效果展示

在这里插入图片描述

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

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

相关文章

【微服务技术09】统一网关Gateway

【微服务技术09】统一网关Gateway 案例代码:https://gitee.com/pikachu2333/spring-cloud-hexuan 网关作用 网关功能: 身份认证和权限校验服务路由、负载均衡请求限流 权限控制: 网关作为微服务入口,需要校验用户是是否有请求…

配置Typora

配置Typora 文章目录配置Typora阿里云1)网页搜索阿里云OSS2)注册账号3)点击立刻开通a) 点击“产品价格”b) 初次付费c) 交钱以免造成后续无法访问d)进入管理控制台e) 创建钥匙PicGo1)下载安装2)设置选择显示…

领域知识网络即服务:知识助力产业升级“无形的手”?

文|智能相对论 作者|叶远风 你用过ChatGPT了吗? 这个风靡全球的AI应用,以出圈的方式展现着AI的能量。 一个对话的界面,可以聊任何你想聊的话题,可以写出任何你想要的文字。 似乎有无限的人类知识,被集中到了一起&…

别再背锅了,这个小技巧统计第三方接口耗时很安逸

前言 之前我有写过一篇记录生产环境事故的文章,获得了不少好评。 后续,我们团队有做过一些讨论,为了支撑运营维护,搭建了更好的日志平台GranfaLoki,也引入了SkyWalking做链路追踪。 但过程中也遇到了一些问题&#xff…

26个工业废水处理工艺流程图!水处理从业人员必看

1 矿泉水除溴酸盐工艺流程 季胺1型官能团耐受硫酸盐、氯离子等去除溴化物 2 电厂制备超纯水工艺流程 内冷水系统降电导装置,脱除阴阳离子 电导率<1μs/cm 3 锰矿除氨氮工艺流程 两串一备,通过磺酸基官能团捕捉铵根离子 4 垃圾渗滤液除氨…

5-7:Spring整合Elasticsearch

引入依赖 spring-boot-starter-data-elasticsearch 配置Elasticsearchcluster-name、cluster-nodes. Spring Data Elasticsearch ElasticsearchTemplateElasticsearchRepository 实现对帖子的搜索&#xff0c;将帖子的数据存到ES中 EslaticSearch使用 下载依赖 <!-- htt…

Elasticsearch:基于文件的用户认证

你可以使用内置文件域&#xff08;file realm&#xff09;管理和验证用户。 使用文件域&#xff0c;用户在集群中每个节点上的本地文件中定义。 重要&#xff1a;作为集群的管理员&#xff0c;你有责任确保在集群中的每个节点上定义相同的用户。 Elastic Stack 安全功能不提供任…

C++ Reference: Standard C++ Library reference: Containers: map: map: erase

C官网参考链接&#xff1a;https://cplusplus.com/reference/map/map/erase/ 公有成员函数 <map> std::map::erase C98 (1) void erase (iterator position); (2) size_type erase (const key_type& k); (3) void erase (iterator first, iterator last);…

HR是怎么看待PMP证书呢?

HR 也是打工人&#xff0c;企业需要什么样的人才就招聘什么样的求职者&#xff0c;问 HR 怎么看待 PMP 证书&#xff0c;其实也就是PMP 证书的市场价值怎么样。 市场上对PMP证书的评价争议非常大&#xff0c;尤其近两年考 PMP 的人越来越多&#xff0c;不可否认&#xff0c;很…

UNIAPP实战项目笔记52 输入手机号页面和输入验证码页面

UNIAPP实战项目笔记52 输入手机号页面和输入验证码页面 实际案例图片 输入手机号页面 输入验证码页面 显示输入手机号 使用验证码登录 具体内容图片自己替换哈&#xff0c;随便找了个图片的做示例 具体位置见目录结构 完善布局页面和样式 代码 login-tel.vue页面 <templat…

33-Vue之ECharts-仪表盘图

ECharts-仪表盘图前言仪表盘的特点仪表盘的基本实现仪表盘的常见效果前言 本篇来学习写仪表盘图 仪表盘的特点 可以更直观的表现出某个指标的进度或实际情况 仪表盘的基本实现 ECharts 最基本的代码结构准备数据, 设置给 series 下的 data在 series 下设置 type:gauge &l…

毕业设计-国内疫情数据综合可视化分析系统

目录 前言 课题背景和意义 实现技术思路 实现效果图样例 前言 &#x1f4c5;大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科…

关于websocket抓包时的注意事项

总是需要一些原因&#xff0c;需要查看客户端和服务端的websocket数据交互&#xff0c;为了使得查看方便&#xff0c;客户端和服务端使用ws而非wss。 服务端部署在linux上&#xff0c;用tcpdump抓包后&#xff0c;在windows上用wireshark打开&#xff0c;如下所示&#xff1a; …

前端基础(十)_标签分类(行级标签、块级标签、行块标签)

标签分类 可以分为三类&#xff1a;行级标签、块级标签、行块标签 行级元素 常用的行级元素&#xff1a;span、b、i、em、strong、a、del、sub、sup等 注意&#xff1a; 1、默认宽度随元素的内容的变化而变化&#xff1b; 2、默认情况下高度由内容撑开&#xff1b; 3、不会…

【快速学习系列】Spring理解,IOC、DI、AOP的使用和代码示例及spring扩展(bean作用域、自动装配类型和拆分策略)

【快速学习系列】Spring理解&#xff0c;IOC、DI、AOP的使用和代码示例及spring扩展&#xff08;bean作用域、自动装配类型和拆分策略&#xff09; Spring概述 Spring设计理念 Spring是面向Bean的编程 Spring三大核心容器&#xff1a; Beans&#xff0c;Core&#xff0c;Conte…

使用vue-cli创建一个新项目

1&#xff0c;在文件夹中打开命令行输入&#xff1a; vue create educationcloud-pc 2&#xff0c;这里我选择手动创建配置 3&#xff0c;我会选择我用到的几个 空格键是选中 取消 a是全选 4&#xff0c;这里我暂时使用vue2版本 5&#xff0c;是否使用history路由 6&#xf…

skyBox 近地时角度倾斜问题,天空倾斜

近地出现角度不对问题 将下面代码放入js文件&#xff0c;引入项目。 本质是在Cesium.skyBox的代码上修改&#xff0c;并给Cesium重新增添近地的天空盒 需要注意的是&#xff0c;代码最后的Cesium.GroundSkyBox SkyBoxOnGround 调用方式&#xff1a; import ‘…/…/路径’ 然后…

地址汇总详细讲解(内附非纯末梢)

♥️作者&#xff1a;小刘在这里 ♥️每天分享云计算网络运维课堂笔记&#xff0c;疫情之下&#xff0c;你我素未谋面&#xff0c;但你一定要平平安安&#xff0c;一 起努力&#xff0c;共赴美好人生&#xff01; ♥️夕阳下&#xff0c;是最美的&#xff0c;绽放&#xff0c;…

5.2 词向量Word Embedding

在自然语言处理任务中&#xff0c;词向量&#xff08;Word Embedding&#xff09;是表示自然语言里单词的一种方法&#xff0c;即把每个词都表示为一个N维空间内的点&#xff0c;即一个高维空间内的向量。通过这种方法&#xff0c;实现把自然语言计算转换为向量计算。 如 图1 …

转转用户画像平台实践

文章目录1. 背景2. 什么是用户画像3. 标签画像的应用场景4. 转转用户画像平台的实践4.1 系统结构图4.2 标签画像的构建原则4.3 标签类型和规则4.4 标签的生产加工4.5 标签的存储设计4.6 用户洞察4.7 用户分群计算4.8 ID-MAPPING5 未来规划6 总结1. 背景 转转作为二手电商交易领…