Python & Qt Designer 初探

代码下载在最下面

#开发环境安装#

        本示例在Windows11下, 使用VSCode开发, Python 3.12.2,  Qt Designer 5.11

VSCode插件Python、Python Debugger、PYQT Integration、Pylance

(准备) VSCode自行官网下载 Visual Studio Code - Code Editing. Redefined

(准备) Python 直接上官网下载安装 Download Python | Python.org

(准备) Qt Designer 5.11安装包 可以自行下载或以下百度下载   

链接:https://pan.baidu.com/s/10J34p7YPC9ivtJoD5-JAtQ 
提取码:3t2t

VSCode插件如下:

安装pip:

  基本是可以忽略的,python新版都自动安装了pip,注意一下“配置环境-->>Python环境变量”中 是否已经配置了.否则基本是运行不了python和pip的,还有第10的建议

  1. 首先确保已经正确地安装了Python。如果没有安装Python,需要先从官网(https://www.python.org/)上下载并安装最新版本的Python。

  2. 打开命令提示符或者终端窗口。

  3. 输入以下命令来检查当前系统中是否已经存在pip:pip --version。如果显示类似于"pip x.x.x from ... (python x.x)"的信息,则表示pip已经安装好了。

  4. 如果未能成功运行第三步的命令,说明还没有安装pip

  5. 访问 https://bootstrap.pypa.io/get-pip.py 这个URL,将其内容复制到文件中,然后保存为 get-pip.py

  6. 使用命令提示符或终端窗口导航到保存了 get-pip.py 文件的目录。

  7. 运行以下命令来安装pip:python get-pip.py。等待安装完成。

  8. 安装完成后,再次运行 pip --version 命令来验证pip是否成功安装。应该会显示pip的版本号。

  9. 现在就可以通过pip来管理Python包了。比如,可以使用 pip install package_name 命令来安装特定的Python包。

  10. 最后建议:在终端输入 更新一下pip的版本

    python -m pip install --upgrade pip

安装QT

我用的是PyQt5,安装命令在终端运行, 直接安装很慢,可以加入阿里镜像

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

再次安装PyQt5-tools,安装命令在终端运行, 安装后很大程度会报一些异常错误,没管它,后面还是是可以正常使用

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

#配置环境#

Python环境变量

Windows下需要配置检查一下Python的环境变量是否有了,我的电脑 右键 -》属性-》高级系统设置-》环境变量,找到“系统变量”中的“Path” 加入Python的安装路径和Scripts的路径

VSCode插件PYQT Integration配置

打开VSCode 扩展, 找到前面安装好的 PYQT, 点开设置->扩展设置

第3处,注意是设置 Pyuic:Cmd 和 Qtdesigner:Path 的路径  (记得都要加入.exe可运行文件)

     Pyuic:Cmd 的安装路径在Python安装目录Scripts下,

     Qtdesigner:Path的安装路径就是签名百度盘下载过来自行安装的位置

到处如果都没有什么问题, 那么就可动手码代码了.

#创建UI代码, PYQT和Qt Designer的使用#

代码目录结构如下:

1、安装以上的各种后,配置好插件PYQT,在VSCode项目区 空白处右键,可以出现下图“PYQT:New Form” 这个可以直接打开前面配置的Qt Designer进行页面创建

2、如果在已经创建好的.ui文件上右键可以出现 New ...(新建窗口), Preview ...(预览窗口), Edit...(编辑窗口), Compile...(生成Python代码UI类--常用)

每次使用Qt Designer编辑后都运行一下 Compile重新生成py UI类, 另外记得Qt Designer用完关闭一下,要不下次总会提示重新打开, 不小心就把上次的编辑给覆盖了

#上示例代码了#

直接上个代码了,UI的代码都是PYQT结合Qt Designer创建窗口,自动生成的,就不上了

启动类 Main.py

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QDialog
from Ui_frmMain import Ui_FrmMainWindow  # 导入主窗口类
from frmTestDialog import frmTestDialog

class MyMainWindow(QMainWindow):
    def __init__(self, parent=None):
        super().__init__(parent)

        # 实例化对话框类
        self.ui = Ui_FrmMainWindow()
        self.ui.setupUi(self)
        self.ui.btnLogin.clicked.connect(self.handleLogin)
        self.ui.btnExit.clicked.connect(self.handleExit)
        self.ui.btnTShowDialog.clicked.connect(self.handleShowDialog)
        self.ui.txtUser.setFocus()

    def handleLogin(self):
        user = self.ui.txtUser.text()
        pwd = self.ui.txtPass.text()
        print(f'按钮被点击了 用户名:{user},密码:{pwd}')

    def handleExit(self):
        print('退出了')
        self.close()
        
    def handleShowDialog(self):
        dialog = frmTestDialog()
        result = dialog.exec_()
        if result == QDialog.Accepted:
            print('用户同意了')
        else:
            print('用户拒绝了')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = MyMainWindow()
    window.show()

    sys.exit(app.exec_())

Dialog窗口 frmTestDialog.py

from PyQt5.QtWidgets import QDialog
from Ui_test_dialog import Ui_testDialog  # 导入对话框类

class frmTestDialog(QDialog):
    def __init__(self):
        super().__init__()

        # 实例化对话框类
        self.ui = Ui_testDialog()
        self.ui.setupUi(self)

示例运行效果:

代码下载地址: https://download.csdn.net/download/sontin/89001160

相关推荐

  1. Snakemake:初探

    2024-03-21 09:28:03       36 阅读
  2. KMM<span style='color:red;'>初探</span>

    KMM初探

    2024-03-21 09:28:03      14 阅读
  3. Quarkus初探

    2024-03-21 09:28:03       12 阅读
  4. Docker初探

    2024-03-21 09:28:03       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-21 09:28:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-21 09:28:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-21 09:28:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-21 09:28:03       18 阅读

热门阅读

  1. BOM

    BOM

    2024-03-21 09:28:03      24 阅读
  2. 工作需求ElementUi组件的使用

    2024-03-21 09:28:03       18 阅读
  3. 第二十七章 配置 Web Gateway 的默认参数 - 安全

    2024-03-21 09:28:03       18 阅读
  4. 【GameFramework框架内置模块】11、网络(Network)

    2024-03-21 09:28:03       18 阅读
  5. 在Ubuntu 12.04和CentOS 6上如何添加和删除用户

    2024-03-21 09:28:03       18 阅读
  6. SWIFT环境配置及大模型微调实践

    2024-03-21 09:28:03       18 阅读