首页 > 其他分享 >PyQt5入门教程:从安装到构建简单应用

PyQt5入门教程:从安装到构建简单应用

时间:2024-07-04 20:32:05浏览次数:26  
标签:__ Qt Python 入门教程 PyQt5 ui UI 构建

PyQt5入门教程:从安装到构建简单应用

简介

PyQt5是一个功能强大的Python绑定库,用于Qt应用程序框架。它允许我们使用Python语言快速开发跨平台的桌面应用程序。本教程将引导你完成PyQt5的安装、配置,并带你创建一个简单的图形用户界面(GUI)应用程序。

Part 1: 安装PyQt5

在你的开发环境中安装PyQt5:

  1. 打开终端或命令提示符。

  2. 创建并激活虚拟环境(可选,但推荐):

    python -m venv myenv
    myenv\Scripts\activate  # Windows
    source myenv/bin/activate  # macOS/Linux
    
  3. 使用pip安装PyQt5和pyqt5-tools:

    pip install PyQt5 pyqt5-tools
    

    如果下载速度慢,可以指定国内镜像源:

    pip install PyQt5 pyqt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple
    
  4. 使用pip list确认PyQt5是否已安装。

Part 2: PyCharm配置PyQt5

在PyCharm中配置PyQt5,以便使用Qt Designer设计UI:

  1. 打开PyCharm,进入“File” -> “Settings” -> “Tools” -> “External Tools”。

  2. 点击“+”添加新工具,配置Qt Designer、PyUIC和Pyrcc。

    • QtDesigner

      • 名称:QtDesigner
      • 程序:designer.exe的路径(例如:C:\Python39\Lib\site-packages\PyQt5\Qt\bin\designer.exe)。
      • 工作目录:$FileDir$
    • PyUIC

      • 名称:PyUIC
      • 程序:Python解释器的路径。
      • 实参:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
      • 工作目录:$FileDir$
    • Pyrcc

      • 名称:Pyrcc
      • 程序:Python解释器的路径。
      • 实参:-rcc $FileName$ -o $FileNameWithoutExtension$_rc.py
      • 工作目录:$FileDir$
  3. 配置完成后,你可以通过PyCharm访问Qt Designer。

Part 3: 设计第一个UI

使用Qt Designer设计UI:

  1. 打开Qt Designer,选择“Main Window”并创建新窗口。
  2. 在“Widget Box”中选择组件,拖拽到设计画布上。
  3. 使用“属性编辑器”修改组件的属性。
  4. 完成设计后,使用快捷键Ctrl + R预览UI。

Part 4: 将UI转换为Python代码

  1. 在Qt Designer中完成设计后,保存.ui文件。

  2. 使用PyUIC工具将.ui文件转换为Python代码:

    pyuic5 your_ui_file.ui -o output_py_file.py
    
  3. 创建一个新的Python脚本,例如main.py,引入QApplication和QMainWindow,并使用转换后的UI类创建应用程序:

    import sys
    from PyQt5.QtWidgets import QApplication, QMainWindow
    import your_ui_file  # 替换为你的.ui转换后的模块名
    
    class MainWindow(QMainWindow, your_ui_file.Ui_MainWindow):
        def __init__(self):
            super().__init__()
            self.setupUi(self)
    
            # 添加按钮点击事件
            self.pushButton.clicked.connect(self.on_pushButton_clicked)
    
        def on_pushButton_clicked(self):
            print("按钮被点击了!")
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        mainWindow = MainWindow()
        mainWindow.show()
        sys.exit(app.exec_())
    
  4. 运行main.py,你将看到设计的用户界面,并且按钮点击事件已经可以正常工作。

结语

本教程为你提供了一个完整的PyQt5入门流程,从安装到配置,再到设计UI和编写应用逻辑。PyQt5的世界非常广阔,你可以继续探索更多的组件和布局,甚至学习如何将应用程序打包发布。希望这个教程能够帮助你开启PyQt5的学习之旅。

标签:__,Qt,Python,入门教程,PyQt5,ui,UI,构建
From: https://blog.csdn.net/eclipsercp/article/details/140164038

相关文章

  • 源码编译构建LAMP
    Apache简介        主要特点                开放源代码,跨平台应用                支持多种网页编程语言                模块化设计,允行稳定,良好的安全性        编译安装httpd服务器       ......
  • 深入探索 Yarn 脚本:发掘自动化构建的潜力
    引言Yarn是一个现代的包管理工具,它提供了快速、可靠和安全的依赖管理方式。除了包管理,Yarn还允许开发者通过脚本来自动化构建过程,从而提高开发效率。本文将详细介绍如何查看所有可用的Yarn脚本,并展示如何利用这些脚本来优化你的开发流程。Yarn脚本简介Yarn脚本是定......
  • 黑客入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
    想要成为黑客,却苦于没有方向,不知道从何学起,下面这篇黑客入门教程可以帮你实现自己的黑客梦想,如果想学,可以继续看下去,文章有点长,希望你可以耐心看到最后 1、Web安全相关概念(2周)·熟悉基本概念(SQL注入、上传、XSS、、CSRF、一句话木马等)。通过关键字(SOL注入、上传、XSSC......
  • 黑客入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
    想要成为黑客,却苦于没有方向,不知道从何学起,下面这篇黑客入门教程可以帮你实现自己的黑客梦想,如果想学,可以继续看下去,文章有点长,希望你可以耐心看到最后 1、Web安全相关概念(2周)·熟悉基本概念(SQL注入、上传、XSS、、CSRF、一句话木马等)。通过关键字(SOL注入、上传、XSSC......
  • 黑客入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
    想要成为黑客,却苦于没有方向,不知道从何学起,下面这篇黑客入门教程可以帮你实现自己的黑客梦想,如果想学,可以继续看下去,文章有点长,希望你可以耐心看到最后 1、Web安全相关概念(2周)·熟悉基本概念(SQL注入、上传、XSS、、CSRF、一句话木马等)。通过关键字(SOL注入、上传、XSSC......
  • 深度分析:Maven在软件构建管理中的地位与选型指南
    引言在现代软件开发中,构建管理工具扮演着至关重要的角色。它们不仅简化了构建过程,还提高了构建的可重复性和可靠性。ApacheMaven是其中的佼佼者,但它并不是唯一的选择。本文将详细分析Maven,比较其与其他同类工具的优缺点,探讨其使用场景,并提供选型和使用建议。什么是Ma......
  • 构建阿里云的centos7-docker镜像
    最近在项目中需要测试运维脚本,但是在网上都找不到可以模拟阿里云的centos7镜像,所以就自己构建了一个,跟大家分享下。构建平台:操作系统window11软件dockerdesktop工作目录:CentOS-Base.repo[base]name=CentOS-$releaseverenabled=1failovermethod=prioritybaseurl......
  • 用PyQt5打造炫酷界面:深入解析pyqt5-custom-widgets
    在PyQt5中,使用自定义小部件可以为应用程序增添更多实用性和时尚感。pyqt5-custom-widgets是一个开源项目,提供了一系列有用且时尚的自定义小部件,如开关按钮、动画按钮等。本文将详细介绍pyqt5-custom-widgets的安装和使用方法。安装可以使用PIP进行安装(根据你的平台,可能是......
  • 基于卷积神经网络的交通标志识别系统(通过TensorFlow构建LeNet-5模型,并使用GTSRB德国交
    完成程序下载点此下载1、资源项目源码均已通过严格测试验证,保证能够正常运行;2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通;3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业......
  • jdk的Dockerfile构建
    JDKFROMcentos:centos7MAINTAINERDenlin2542581032@qq.com#时间更新RUN/bin/cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime\&&echo'Asia/Shanghai'>/etc/timezone#仓库源配置RUNrm-rf/etc/yum.repos.d/*.repo\&&curl......