【PyQt5】python3.7+Qt+pycharm环境搭建->初建项目->生成可执行文件(图多)

2023-05-16

文章目录

  • 目标
  • 环境准备
  • python搭建
    • 下载
    • 安装
    • pip更新
    • PyQt5安装
    • pyinstaller安装
    • pyqt5_tools
  • Qt搭建
    • 下载
    • 安装
  • pycharm搭建
    • 下载
    • 安装
    • 配置
      • python配置
      • qtdesigner配置
      • pyGUI配置
      • pyRC资源
  • 初建项目及可执行文件
    • 创建项目并运行
    • 创建ui界面
    • 生成可执行文件.exe

目标

用python来做GUI界面,还能生成可执行文件(能够在没有python环境的电脑上运行)
需要用到python,第三方库PyQt5,IDE用pycharm(又能编写又能编译运行又能生成可执行文件),用qt或是pyqt5_tools的designer来设计UI界面。
效果
在这里插入图片描述

在这里插入图片描述

环境准备

win7或win10,64位或32位,安装顺序可以跟着小星一起。(找个网速快的地方)
提前说明:安装32位(或者64位)pyhton后,pycharm和第三方库也都安装32位(或者64位),Qt可以不用担心,里面带有32位和64位的MinGW

如果后续想要生成可执行文件的,32位python生成的.exe可以在32位或者64位上面都兼容运行,但是64位python生成的在32位电脑上不兼容(目前小星遇到的是这样)

python搭建

下载

下载一定找官网:https://www.python.org/downloads/windows/
进去就是这样滴
在这里插入图片描述
根据本地电脑属性选择,64位选择x86-64,32位选择x86。一般选择“executable installer”用.exe来离线安装,可以下载压缩包或者在线安装。
在这里插入图片描述
这里以64位电脑来下载,点击Download Windows x86-64 executable installer,就能等待下载
在这里插入图片描述

安装

下载好后双击.exe运行,进入如图界面。选中add python 3.7 to Path(不选中的话后续要自己添加环境变量),install launcher for all users(recommended)为所有用户安装(可选)。然后在选择customize installation自定义安装。
在这里插入图片描述

接着是optional features,默认即可,点击next
在这里插入图片描述
接着advanced options,勾选前五项后点击install
在这里插入图片描述
等待安装,安装成功界面如下
在这里插入图片描述
打开命令提示符后,输入python后回车,就会输出当前电脑呢安装的版本信息
在这里插入图片描述

pip更新

只要下载的不是最新的python,pip是铁定要更新一遍的。pip主要是在安装第三方库时用到,不需要单独在网上到处找资源找合适版本的包,非常方便好用。一定要记得更新pip。操作也很简单,用管理员打开命令提示符(别用快捷键,乖乖去菜单下搜命令提示符,右键选择管理员打开),接着输入python -m pip install --upgrade pip回车
(这里我已经是装上最新的了,版本已经是22.0.4)
在这里插入图片描述

PyQt5安装

PyQt5属于python的第三方库了,能用python来调用qt的控件做GUI界面。这里不用纠结采用什么版本,直接上pip,在命令提示符里输入python -m pip install pyqt5回车
安装其他的库也类似这种指令:python -m pip install xxxx(如果报错,尝试管理员运行)
在这里插入图片描述

pyinstaller安装

在后面要将项目生成可执行文件,需要用到pyinstaller来生成,所以用pip下载(报错就换管理员运行),在命令提示符中输入python -m pip install pyinstaller回车后等待安装成功。
在这里插入图片描述

pyqt5_tools

如果单纯是入门pyqt或是简单运用的话,可以用pyqt5_tools包代替qt,而且下载很方便(用pip在命令提示符中输入:python -m pip install pyqt5_tools),它里面带有designer,可以进行控件设计,但是也仅仅可以用控件拖拽,设计界面,布局等简单操作。
在这里插入图片描述
而QT中,可以查询控件的方法和类型等,含有的东西会更加全面会更好用,但下载安装就较多,适合有往这方面长期发展专研的小伙伴(仅个人观点,勿喷)

Qt搭建

下载

官方下载很慢,建议找国内镜像。这里选择中国科技技术大学的地址:http://mirrors.ustc.edu.cn/qtproject/archive/qt/5.12/5.12.2/
选择windows类型下载,同样也是一个.exe安装。(qt不用担心32位还是64位,里面都包含有)
在这里插入图片描述

安装

下载好后点击运行,如下图,点击next
在这里插入图片描述
接着需要登陆QT用户,如果可以选中skip可跳过,如果不能则需要注册qt用户来登录。注册邮箱和密码即可,不用付费
在这里插入图片描述
接着都是默认下一步到安装地址,默认C盘(可以换其他的盘)点击下一步。
在这里插入图片描述
安装需要的组件,由于小星是用来做控制类设备的程控界面,只需要用到QT类和MinGW编译器就行,有其他需求的小伙伴可以选合适的。
在这里插入图片描述
许可协议选择阅读了,点下一步
在这里插入图片描述
快捷菜单可以默认,点击下一步
在这里插入图片描述
接着就点击安装,等待安装完成
在这里插入图片描述
关于如何用python来调用qt中的控件,可以看pycharm->配置

pycharm搭建

下载

主推官址:https://www.jetbrains.com/pycharm/download/#section=windows, 有专业版(要激活)和社区版(免费),建议社区版点击download下载,也是.exe安装。(后面考虑32位还是64位)在这里插入图片描述

安装

下载好后点击运行
在这里插入图片描述
地址可C盘可其他盘
在这里插入图片描述

根据本地电脑选择32位还是64位(可以两个都装),勾选如下然后next.(勾选情况如下,千万要把路径勾上不然要自己加环境变量)
在这里插入图片描述
接着这里默认,点击install等待安装成功即可。
在这里插入图片描述
等待它安装成功就行,这安装是相当快而简单的

配置

在后续的开发中,以pycharm为主来创建项目,.py文件和.ui文件

python配置

打开pycharm
在这里插入图片描述
选择右下角的Configure,选择setting
在这里插入图片描述
打开project interpreter内容,点击 设置 后点击add,添加python环境
在这里插入图片描述

在interpreter的后面找到本地电脑安装上的python.exe路径,选中下面项(为所有用户添加包),点击OK即可。

在这里插入图片描述
成功配置好如下图所示。
在这里插入图片描述
别着急退出setting,还要配置.ui文件转换成.py的工具以及打开qt designer的工具。

qtdesigner配置

之前装好了qt,现在有了pycharm后需要配置工具来打开QT的designer设计。
在setting中找到tool->external tool,点击“+”添加工具
在这里插入图片描述
在添加工具用来打开ui设计界面,配置如下

Program:本地安装的designer的路径(qt路径下或是pyqt5_tools路径下)
Working:$ProjectFileDir$

配置好后可以点ok
这里是下载了5.12.8版本,根据本地下载的qt版本为准
在这里插入图片描述

pyGUI配置

用designer设计后保存的文件为.ui文件,在pycharm里需要将.ui转换成.py文件,用来被其他文件调用到UI界面中的控件。在setting->tool->external tool中继续添加工具

Name:pyGUI(可随意命名)
Program:下载的python
Arguments:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
Working:$FileDir$

点击OK
在这里插入图片描述

pyRC资源

Program:python的安装目录下的Scripts文件夹的pyrcc5.exe文件

Arguments:$FileName$ -o $FileNameWithoutExtension$_rc.py
Working directory : $FileDir$

在这里插入图片描述

都配置好后可以点ok,退出setting。

初建项目及可执行文件

创建项目并运行

配置前面的环境后,进来pycharm,选择create new project
在这里插入图片描述
地址选择合适的继续create
在这里插入图片描述
等待环境搭好

在这里插入图片描述
在newtext右键->new->python file,新建main.py
在这里插入图片描述
编写简单的打印“good day”程序,可以点击右上角的绿色三角或是鼠标右键选择run ‘main’,即可运行程序。正常运行成功后如下。

在这里插入图片描述

创建ui界面

新建一个.ui文件(设计UI界面),可以在点击tool->external tools->qtdesigner,等待弹出窗口。
在这里插入图片描述
弹出新建窗体,选择main windows(主选,有菜单可设置)
在这里插入图片描述
从widget box中拖入push button控件和list view控件和combo box控件
在这里插入图片描述
保存ui到刚刚创建的项目中。
在这里插入图片描述
返回到pycharm,可以看见.ui文件
在这里插入图片描述
右键.ui文件,点击external tools->pyGUI

在这里插入图片描述
等待.py文件生成,如下
在这里插入图片描述
更改main.py文件内容,

# 导入需要的模块
from untitled import Ui_MainWindow
import sys
from PyQt5.QtCore import Qt,QCoreApplication
from PyQt5.QtWidgets import QApplication,QMainWindow

# 创建类
class mywin(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super(mywin, self).__init__()
        # 窗口初始化
        self.setupUi(self)


if __name__ == "__main__":
	# qt没有自动匹配电脑屏幕分辨率,所以需要设置
    QCoreApplication.setAttribute(Qt.AA_EnableHighDpiScaling)
    # 用QApplication类创建了应用程序实例app。
    app = QApplication(sys.argv)
    # 带有窗口的类创建实例
    win = mywin()
    # 显示窗口
    win.show()
    # 点击窗口上的关闭按钮,将关闭窗口停止运行
    sys.exit(app.exec_())

点击运行后如下
在这里插入图片描述

生成可执行文件.exe

在pycharm中打开要生成.exe的项目,窗口下方找到Terminal(可在项目路径项执行python指令),输入pyinstaller -D -w main.py回车等待完成。(将会生成一个包含.exe和依赖包的目录)

注:pyinstaller的指令参数
-F 指定打包后只生成.exe格式文件
-D创建一个目录,包含.exe和依赖包文件
-c 使用控制台,无界面(默认)
-w 使用窗口,无控制台
-p 添加搜索路径,让其找到对应的库
-i 改变生成程序的icon图标
在这里插入图片描述

生成的可执行文件在项目路径的dist文件中
在这里插入图片描述
点击main文件后,可以看到有main.exe在这里插入图片描述

在这里插入图片描述
运行得到
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【PyQt5】python3.7+Qt+pycharm环境搭建->初建项目->生成可执行文件(图多) 的相关文章

  • 关于自增自减的理解

    自增运算符 43 43 xff1a 自增运算符 xff0c 也是一元运算符 作用 xff1a 与变量配合使用 xff0c 使得变量加一或减一 前置自增 xff1a 自增运算符在变量的前面 后置自增 自增运算符在变量的后面 前置自增和后置自增
  • CentOS安装NodeJS

    CentOS安装NodeJS 在CentOS下安装NodeJS有以下几种方法 使用的CentOS版本为7 2 CentOS其他版本的NodeJS安装大同小异 xff0c 也可以参看本文的方法 安装方法1 直接部署 1 首先安装wget yu
  • 无法打开“windows.h”文件、无法打开“kernel32.lib”文件解决方法

    无法打开 windows h 文件的解决做法 xff1a 在VS2008下的option VC 43 43 目录 添加包含文件路径中 xff0c 添加windows SDK目录 xff0c 例如这个 xff0c C Program File
  • ubuntu 搜索安装包的命令

    1 sudo apt cache search XXX
  • ubuntu让开机就打开蓝牙

    我的ubuntu默认就有蓝牙功能 xff0c 也可以用 xff0c 但每次重启就很要重新打开蓝牙 xff0c 很烦恼 xff0c 解决办法如下 xff1a 1 sudo apt get install blueman bluez 2 vim
  • 【百度OCR】java调用百度OCR接口实现文字识别

    百度智能云文字识别 https ai baidu com 创建应用 参考博客 xff1a Java基于百度API接口实现智慧文字识别 百度AI开放平台 xff0c 文字识别接口 获取access token 百度AI 对接百度AI 增值税发
  • 使用某个用户登录命令:kinit adminad

    使用某个用户登录命令 xff1a kinit admin admin 票据生成方法 xff1a hdfs 票据 su hdfs klist hdfs rdspproduction 64 CARS COM 票据 然后切换到155机器 执行 s
  • Python3+Selenium框架搭建

    Webdriver概述 Webdriver Selenium2 xff09 是一种用于Web应用程序的自动测试工具 xff0c Thoughtworks公司一个强大的基于浏览器的开源自动化测试工具 xff0c 通常用来编写web应用的自动化
  • 算法题1:字符序列交换(阿里巴巴笔试题)

    题目 xff1a 若初始序列为gbfcdae xff0c 那么至少需要多少次两两交换 xff0c 才能使该序列变为abcdefg xff1f 任给一个自由a g这7个字母组成的排列 xff0c 最坏的情况下需要至少多少次两两交换 xff0c
  • 写给前端的 Nest.js 教程——10分钟上手后端接口开发

    前言 这个教程的所有代码我都放在了我的 GitHub 仓库 xff1a Nest CRUD Demo 1 xff0c 欢迎大家点个 Star xff01 框架简介 Nest 是一个用于构建高效 xff0c 可扩展的 Node js 服务器端
  • NSPredicate谓词搜索使用小记

    iOS中的搜索正常情况下用NSPredicate都足以解决问题 比如我们有一个原数组 dataArraty NSPredicate predicate 61 NSPredicate predicateWithFormat 64 span c
  • extern和volatile的用法

    extern 的用法 extern的用法的对象主要是变量和函数 用extern声明外部变量 什么是外部变量 外部变量是指在文件或者函数外部定义的全局变量 外部变量仅定义一次并且在所有的函数之外 在一个文件内使用外部变量 作用域 xff1a
  • 抽象数据类型定义(ADT)

    一 抽象数据类型定义 xff08 ADT xff09 作用 xff1a 抽象数据类型可以使我们更容易描述现实世界 例 xff1a 用线性表描述学生成绩表 xff0c 用树或图描述遗传关系 定义 xff1a 一个数学模型以及定义在该模型上的一
  • Keil串口仿真调试

    用到的软件 Keil开发软件 虚拟串口软件 串口调试小助手 软件介绍 1 虚拟串口软件 对于笔记本电脑来说 xff0c 没有自带串口使用虚拟串口软件可以模拟真实的串口 程序可以利用虚拟串口与其他串口交换数据 Virtual Serial P
  • Qt学习之路【5】:静态Qt库下SQLite数据库无法加载驱动(QSQLITE driver not loaded)

    使用的Qt库 Qt4 8 6 交叉编译工具链 xff1a arm linux gcc 4 3 6 这个问题纠结了好久 刚开始我使用的是Qt的动态库 xff0c 没有出现这个问题 现在使用的是Qt的静态库出现了这个问题 xff1a QSqlD
  • 【群晖nas】阿里域名DDNS 配置外网访问(华硕AC68U路由端口映射)

    拓扑图 友情提示 xff1a 其实 xff0c 华硕的路由是提供了免费域名的 具体步骤 确保路由器的WAN口IP为公网地址 在 路由器管理 系统设置 界面 xff0c 允许 从互联网设置RT AC88U 步骤1 高级设置 系统管理 系统设置
  • 使用"conn / as sysdba"登录时报出"insufficient privileges"错的问题

    1 xff09 conn as sysdba 的认证方式 oracle数据库的三种登录验证方式 xff1a 操作系统身份认证 密码文件认证 数据库认证 而conn as sysdba是属于操作系统认证 原理 xff1a 电脑开机时登录的用户
  • 数码管消影问题总结

    1 消影方法1 先送段选数据后送位选数据时 xff0c 需要在中间加入一条语句P0 61 0xff 作用是消影 现在来分析一下是怎样 产生影的 xff1f 当dula 61 0后锁住了P0口的数据 xff0c 即P0口仍然保持着上次的段选数
  • 【linux学习】ubuntu下挂载window共享文件

    ubuntu下挂载window共享文件实现文件共享 第一步 xff1a 将要共享的window文件夹共享 第二步 在ubuntu下进行挂载 xff0c 完整语法 xff0c 如下 xff1a 第一种方式 mount t cifs 192 1
  • ROM、SDRAM、RAM、DRAM、SRAM、FLASH 的区别

    ROM 和 RAM 指的都是半导体存储器 xff0c ROM 是 Read Only Memory 的缩写 xff0c RAM是 Random Access Memory的缩写 ROM 在系统体质供电的时候仍然可以保存数据 xff0c 而R

随机推荐

  • 软件开发技术文档编写规范

    在项目开发过程中 xff0c 应该按要求编写好十三种文档 xff0c 文档编制要求具有针对性 精确性 清晰性 完整性 灵活性 可追溯性 可行性分析报告 xff1a 说明该软件开发项目的实现在技术上 经济上和社会因素上的可行性 xff0c 评
  • insmod: can't insert 'led.ko': invalid module format详细解释

    insmod can 39 t insert 39 led ko 39 invalid module format 之前在Imx257学习版固件编写的驱动想直接移植imx257核心板的开发板上 以为2个板子的源码的引脚定义一样就没什么问题了
  • html媒体查询,同一个网页,在不同的条件下,使用不同的样式。

    媒体查询简述 设备 xff1a 屏幕 xff1a PC 手机端打印机屏幕阅读器 尺寸 xff1a 常见尺寸 320 420之间 响应式网页 xff1a 同一个网页 xff0c 在不同的条件下 xff0c 使用不同的样式 rem 百分比 xf
  • Anaconda3的安装和详细介绍(带图文)

    Anaconda的安装和详细介绍 xff08 带图文 xff09 Anacond的介绍 Anaconda指的是一个开源的Python发行版本 xff0c 其包含了conda Python等180多个科学包及其依赖项 因为包含了大量的科学包
  • vue项目引入less文件

    如果需要在vue项目中使用 less文件 xff0c 首先需要安装less和less loader依赖包 xff0c 这个 less文件相当于以前web项目的css文件 xff0c 有三种引入方式 xff1a 方式一 xff1a 在vue界
  • 新的开始

    这是第一次写博客 xff0c 也算是一个新的开始 今天就是写一些自己学到的内容 xff1a 今天接触了冒泡排序法 xff0c 还是能够接受的 1 init function var a 61 10 30 20 40 15 5 25 var
  • 【群晖nas】raidrive 极简教程

    1 群晖套件重心下载并配置 webDav server 2 raidrive连接群晖 xff0c 本地化使用 网盘下载 链接 xff1a https pan baidu com s 1eP9zBjlPjmL2 0MlWUlS3A 提取码 x
  • ubuntu20.04安装jenkins教程步骤-官方

    Debian Jenkins Packages Jenkins Debian Packages This is the Debian package repository of Jenkins to automate installatio
  • 编译mnistCUDNN时出错:fatal error: FreeImage.h: No such file or directory

    编译mnistCUDNN时出错 xff1a fatal error FreeImage h No such file or directory 在测试CUDNN是否正常使用时候报错 测试CUDNN8 1是否正常使用 1 在https dev
  • elementUI+MybatisPlus日期查询

    elementUI 43 MybatisPlus日期查询 1 前端设置 在el date picker组件加入value format 61 34 yyyy MM dd 34 xff0c 选择日期后 xff0c 将值自动保存为yyyy MM
  • Linux(centos7.5)下安装node.js

    Linux xff08 centos7 5 xff09 下安装node js 进入node的中文站点http nodejs cn download 并选择需要安装的版本链接 使用XShell上传到Linux中 xff0c 目录 opt so
  • typora中图片左对齐

    使用typora很久了 xff0c 但是它的图片一直是居中 xff0c 我这个人有左对齐强迫症 xff0c 想要图片左对齐 typora左对齐很简单 xff0c 打开主题的css文件 在最下面添加上如下代码 xff0c 保存后重启typor
  • Typora的引用设置多种样式

    设置引用多样式 此教程在很多人的反馈下 xff0c 有修改后有问题 xff0c 可能是版本不兼容 我下载的是 Typora version 0 10 10 xff08 beta xff09 版本 xff0c 有的人也是用此版本才修改成功的
  • MySQL安装最后一步卡死了

    今天给老师安装mysql 5 5 版本时出了问题 xff0c 老师的电脑系统为Windows7 xff0c MySQL安装版本为mysql 5 5 安装到最后一步 xff08 MySQL实例配置最后一步卡死了 xff09 xff0c 安装了
  • Element不能自动换行,内容依然超出,直到遇见空格自动换行

    我一个前端技术小白 xff0c 不会前端 xff0c 没办法 xff0c 只能使用别人做好的框架 在最近项目使用Element xff0c 需求是要显示日志 xff0c 日志表格中显示一串SQL 但是 xff0c 在使用过程中 xff0c
  • Oracle数据库锁表解锁

    以下几个为相关表 SELECT FROM V LOCK SELECT FROM V SQLAREA SELECT FROM V SESSION SELECT FROM V PROCESS SELECT FROM V LOCKED OBJEC
  • Android4.3 user版本提权root

    Android user版本提权root xff1a 软件版本 xff1a android4 3 硬件平台 xff1a marvell 方案一 xff1a 第一步 xff0c 修改adb c xff0c 添加可执行程序 xff0c 完成ro
  • Apsara Clouder云计算专项技能认证:云服务器ECS入门题库

    Apsara Clouder云计算专项技能认证 xff1a 云服务器ECS入门题库备份一下 xff1a 以下加粗的部分为正确答案 xff0c 本人得分90分 xff08 60分及格 xff09 xff0c 如有错误 xff0c 也欢迎指正
  • 读写文件与结构体数组结合

    include lt stdio h gt include lt stdlib h gt include lt string h gt define MAXSIZE 1024 define N 5 typedef struct char c
  • 【PyQt5】python3.7+Qt+pycharm环境搭建->初建项目->生成可执行文件(图多)

    文章目录 目标环境准备python搭建下载安装pip更新PyQt5安装pyinstaller安装pyqt5 tools Qt搭建下载安装 pycharm搭建下载安装配置python配置qtdesigner配置pyGUI配置pyRC资源 初建