当前位置: 首页 > news >正文

pyqt5 QuickStart

  在使用pyqt5之前,建议下载一个Anaconda环境,这样下载python包更方便,本篇文章是建立在已经安装好Anaconda的情况下使用的。IDE就是标准的PyCharm了。

一、pyqt包的安装

  python终端执行下面两个安装命令:

pip install PyQt5
pip install PyQt5-tools

  安装成功后,首先看一下自己能不能找到QT Designer,路径就在:Anaconda\Lib\site-packages\qt5_applications\Qt\bin\designer.exe,如果能够看到这个基本上就安装成功了。
  参考:https://blog.csdn.net/weixin_43908875/article/details/128419990

二、QT Designer使用(获取ui文件)

  点开designer.exe,这个时候你可以使用图形化的方式设计界面了(当然也可以使用代码设计,图形化是最基础最简单的。建议简单的框架使用图形化搭建,后续高级功能使用代码进行控制),设计完后将文件保存到项目文件夹中(应该是一个ui文件)。
在这里插入图片描述

三、使用External Tools——PYUIC把ui文件转化为py文件

  设计完ui后,要想在python中使用需要进行转换。转换的工具就是pyuic,对于pyuic是放到Pycharm的External Tools中的,但是有的时候默认的时候并没有出现,也就是下面这个情况:
在这里插入图片描述
  这个情况需要我们手动添加,具体添加的步骤见这篇博客:pyqt5:PyCharm中找不到External-tools解决办法
  添加成功后,右键ui文件选择External Tools的PyUIC工具,就会生成这个ui对应的py文件,但只是这个界面对应的。

四、按照指定格式调用界面

  主程序模板:

from mainwindow import Ui_MainWindow
import sys
from PyQt5.QtWidgets import QApplication, QMainWindowdef main():# 1、创建QApplication类的实例对象app = QApplication(sys.argv)# 2、创建一个WindowClass实例对象myMainWindow = Ui_MainWindow()# 3、显示主窗口myMainWindow.show()# 4、进入程序的主循环、并通过exit函数确保主循环安全结束sys.exit(app.exec_())if __name__ == '__main__':main()

  注意:UI_MainWindow就替换成自己生成的py文件类
  经过我的实践发现,用pyuic直接生成的py文件会报错,解决方法在这个博客中:AttributeError: module ‘PyQt5.QtGui‘ has no attribute ‘QMainWindow‘
  按照如上的操作,再运行main文件就可以使用pyqt啦,当然这只是一个很简单的入门教程,更多的功能还需要后续的慢慢学习。

http://www.lryc.cn/news/146115.html

相关文章:

  • Qt6 for Windows 环境搭建(Visual Studio)
  • 探索未知世界:桌面端3D GIS引领地理信息新时代
  • 微信小程序 趣味学习与益智游戏系统APP
  • 【单片机】UART、I2C、SPI、TTL、RS232、RS422、RS485、CAN、USB、SD卡、1-WIRE、Ethernet等常见通信方式
  • 【Java从0到1学习】13 Java IO流
  • linux并发服务器 —— 多进程并发(四)
  • 华为云Stack的学习(四)
  • Midjourney 完整版教程(从账号注册到设计应用)
  • 保护香港服务器的方法
  • Redis——》Pipeline
  • Git企业开发控制理论和实操-从入门到深入(六)|多人协作开发
  • 通过 ChatGPT 学习 Python
  • 开发卡牌gamefi游戏需要多少钱?
  • linux服务TCP参数配置
  • 部署Spring Boot项目
  • Java 中数据结构LinkedList的用法
  • jmeter递增压测线程组配置
  • hutool工具
  • Redis.conf 配置文件详解
  • linux磁盘空间满了
  • Ansible项目实战管理/了解项目环境/项目管理
  • hadoop 学习:mapreduce 入门案例一:WordCount 统计一个文本中单词的个数
  • vue2项目中el-input单独使用max和maxlength不生效问题
  • 源码角度看待线程池的执行流程
  • 我们的第一个 Qt 窗口程序
  • Linux 8 下的容器引擎Podman概述
  • C++编辑修改PDF
  • 数据倾斜优化
  • Acwing796.子矩阵的和
  • 【ELK日志收集系统】