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 frmTestDialogclass 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

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

体育竞赛成绩管理系统设计与实现|jsp+ Mysql+Java+ B/S结构(可运行源码+数据库+设计文档)

本项目包含可运行源码数据库LW,文末可获取本项目的所有资料。 推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含java,…

NLP 笔记:Latent Dirichlet Allocation (介绍篇)

1 问题介绍 假设我们有一堆新闻,每个新闻都有≥1个主题 我们现在只知道新闻的内容,我们希望一个算法,帮我们把这些新闻分类成主题人类可以根据每个每个文章里面的单词判断主题,那计算机怎么做呢? ——>LDA(Latent D…

如何申请香港信用卡?

第一种方法就是申请香港的虚拟卡 在线上申请,方便快捷,下卡快,可以绑定香港apple id,香港paypal等等 点击获取线上香港信用卡 第二种线下办理方法 如何申请香港个人卡 香港个人银行卡(等同于大陆的借记卡9),开户限制…

K8S--SpringCloud应用整合Nacos实战

原文网址:K8S--SpringCloud应用整合Nacos实战-CSDN博客 简介 本文介绍K8S部署SpringCloud应用整合Nacos实战。 本文是将原来的SpringCloud项目(闪速优选)迁移到K8S上,一行代码都不需要改动。用K8S运行Nacos、Gateway、SpringCl…

Stable Diffusion 本地训练端口与云端训练端口冲突解决办法

方法之一,修改本地训练所用的端口 1 首先,进入脚本训练器的根目录 例如:C:\MarkDeng\lora-scripts-v1.7.3 找到gui.py 2 修改端口号 因为云端训练器也是占用28000和6006端口 那么本地改成27999和6007也是可以的 保存退出,运行启动…

阿里的库存秒杀是如何实现的?

一、阿里的库存秒杀的实现 阿里有很多业务,几十上百个业务线,各自都有一些需要做抢购、秒杀、热点扣将的场景。他们都用哪些方案呢? 我看了很多资料,也找了很多人做交流,最终得到的结论是啥都有,主要总结几个主流的&…

React系列 之 React进阶 含源码解读 (一)事件合成、state原理

资料来源:掘金课程 https://juejin.cn/book/6945998773818490884?enter_fromcourse_center&utm_sourcecourse_center 记录一些笔记 事件合成 React的事件其实是React重新实现的一套事件系统。目标是统一管理事件,提供一种跨浏览器一致性的事件处…

怎么拆解台式电脑风扇CPU风扇的拆卸步骤-怎么挑

今天我就跟大家分享一下如何选购电脑风扇的知识。 我也会解释一下机箱散热风扇一般用多少转。 如果它恰好解决了您现在面临的问题,请不要忘记关注本站并立即开始! 文章目录列表:大家一般机箱散热风扇都用多少转? 机箱散热风扇选择…

AbstractQueuedSynchronizer 独占式源码阅读

概述 ● 一个int成员变量 state 表示同步状态 ● 通过内置的FIFO队列来完成资源获取线程的排队工作 属性 AbstractQueuedSynchronizer属性 /*** 同步队列的头节点 */private transient volatile Node head;/*** 同步队列尾节点,enq 加入*/private transient …

专业矢量绘图设计软件:Sketch for mac 中文激活版

Sketch for Mac 是一款专业的矢量图形设计工具,主要用于 UI/UX 设计、网页设计、图标设计等领域。它的界面简洁、易用,功能强大,可以帮助设计师快速创建高质量的设计作品。 人性化界面 Sketch的界面非常简洁。最顶端的工具箱包含了最重要的操…

Oracle Data Guard部署

Oracle的主备DG搭建 1. 修改主机名,同步时间 主库IP:192.168.100.137 备库IP:192.168.100.138配置主机名(主库) Hostname zygjpdb vim /etc/hosts 192.168.100.137 zygjpdb 192.168.100.138 zygjsdbvim /etc/sysconfig/network HOSTNAMEzygjpdb ------…

【项目自我反思之vue的组件通信】

为什么子组件不能通过props实时接收父组件修改后动态变化的值 一、现象二、可能的原因1.响应式系统的限制2.异步更新队列3.父组件和子组件的生命周期4.子组件内部对 props 的处理 三、组件通信的几种场景(解决方案)1.子组件想修改父组件的数据2.子组件传…