PyQty5—第二课:按钮与函数绑定(1)(附完整代码)

news2025/1/12 20:10:07

在上一节课中我们学会了PyQty5的安装,以及两个环境的配置,那么今天这节课我们学习一下窗口部件如按钮,和我们函数的绑定,这个学会了,我们就可以自己设计界面自己写函数,从而设计出自己的小工具

1、那么首先我们新建一个py文件,右击打开设计窗口

在这里插入图片描述

2、我们点击左边的【Buttons】拖动3个【Push Button】按钮,双击改一下名字

在这里插入图片描述

2、关闭按钮,我们先给他绑定一个关闭函数(这一步先照着做一下)

2-1点击左上角箭头的图标

在这里插入图片描述

2-2点击【关闭窗口】按钮,拖动到空白位置

在这里插入图片描述

2-3按照下图点击(F3退出)

在这里插入图片描述

3、改一下两个按钮的对象名(随便起的)

在这里插入图片描述
在这里插入图片描述

4、那么我们简易的小窗口就创建好了,我们【Ctrl+s】保存一下

在这里插入图片描述

接下来我们用上一节配置的环境,将刚刚设计的ui文件转换为py文件,会生成同名py文件

在这里插入图片描述
在这里插入图片描述

5、接下来我们添加创建对象的代码,记得改一下自己的类名

if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QDialog()
    ui = Ui_Dialog()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())

在这里插入图片描述

视频演示,看起来没有上面问题

请添加图片描述

6、接下来我们将两个按钮绑定一下函数

6-1,我们先看一下我们的按钮

在这里插入图片描述

6-1,按钮绑定函数是:self.button.clicked.connect(绑定的函数),注意绑定的函数不带括号

在这里插入图片描述

# -*- coding: utf-8 -*-
import sys

# Form implementation generated from reading ui file 'untitled.ui'
#
# Created by: PyQt5 UI code generator 5.15.6
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_Dialog(object):
    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(400, 300)


        self.nhbutton = QtWidgets.QPushButton(Dialog)
        self.nhbutton.setGeometry(QtCore.QRect(90, 50, 201, 23))
        self.nhbutton.setObjectName("nhbutton")
        self.nhbutton.clicked.connect(self.print_nh)

        self.hellobutton = QtWidgets.QPushButton(Dialog)
        self.hellobutton.setGeometry(QtCore.QRect(90, 100, 201, 23))
        self.hellobutton.setObjectName("hellobutton")
        self.hellobutton.clicked.connect(self.print_hello_world)


        self.pushButton_3 = QtWidgets.QPushButton(Dialog)
        self.pushButton_3.setGeometry(QtCore.QRect(140, 150, 75, 23))
        self.pushButton_3.setObjectName("pushButton_3")

        self.retranslateUi(Dialog)
        self.pushButton_3.clicked.connect(Dialog.reject) # type: ignore
        QtCore.QMetaObject.connectSlotsByName(Dialog)


    def print_nh(self):
        print("你好")


    def print_hello_world(self):
        print("Hello World")

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
        self.nhbutton.setText(_translate("Dialog", "点击按钮打印你好"))
        self.hellobutton.setText(_translate("Dialog", "点击按钮打印HelloWorld"))
        self.pushButton_3.setText(_translate("Dialog", "关闭窗口"))





if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QDialog()
    ui = Ui_Dialog()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())


7、搞定!

请添加图片描述

这是我们今天学习PyQty5的第 2 课,接下来我也会认真学习,

本节课我们学习了,如何将按钮绑定函数

希望对大家有帮助

致力于办公自动化的小小程序员一枚#

都看到这了,关注+点赞+收藏=不迷路!!

如果你想知道更多关于Python办公自动化的知识各位大佬给个关注吧!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在线word转pdf免费去哪里好?这个网站可以轻松实现!

很多朋友在保存word文档内容的时候,都想把它转换为pdf格式的,因为这种文档比较安全,不能轻易的进行修改,那么在线word转pdf免费去哪里好呢?这个网站可以轻松实现,下面就来说说。 在线word转pdf免费去哪里好? 我们可…

resultType和paramstype的区别

文章目录 1. resultType:2. parameterType:3. 总结看这里就够啦!!!!!!举例 1. resultType: 返回值类型,类型即为对象类型,返回结果字段与对象属性…

C++对象模型分析

class 是一种特殊的 struct 在内存中 class 依旧可以看作变量的集合 class 和 struct 遵循相同的内存对齐原则 class 中的成员函数和成员变量是分开存放的 每个对象有独立的成员变量所有对象共享类中的成员函数 值得思考的问题 运行时的对象退化为结构体的形式 所有成员变…

2023年上半年软考单独划线地区可以申领证书

根据软考办《关于2023年上半年计算机软件资格考试在部分地区单独划定合格标准有关事项的通知》可以得知,符合单独划线地区的,大家可以在2023年8月21日9:00-9月4日17:00申请单独划线。 单独划线申请方法: 报名入口:https://www.r…

易思智能物流无人值守系统文件上传漏洞

易思智能物流无人值守系统文件上传漏洞 一、 产品简介二、 漏洞概述三、 影响范围四、 复现环境五、 漏洞复现小龙poc检测 六、修复建议 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接…

【附安装包】Moldflow2023安装教程

软件下载 软件:Moldflow版本:2023语言:简体中文大小:5.55G安装环境:Win11/Win10/Win8/Win7硬件要求:CPU2.0GHz 内存4G(或更高)下载通道①百度网盘丨64位下载链接:https://pan.baidu…

innovus set_ccopt_property insertion_delay

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 set_ccopt_property insertion_delay -pin A/CP $value value的值是负的,意思是需要把A/CP tree做长,正值就是告诉这里有这么长,工具就会把…

vue2+qrcodejs2+clipboard——实现二维码展示+下载+复制到剪切板——基础积累

最近在写后台管理系统时,遇到一个需求就是要实现二维码的展示下载复制到剪切板。 效果图如下: 1.二维码展示下载功能——qrcodejs20.0.2 我是安装的qrcodejs20.0.2,指定了具体的版本号,也可以安装默认的当前稳定版本&#xff0…

Scikit-learn降维与度量学习代码批注及相关练习

一、代码批注 代码来自:https://scikit-learn.org/stable/auto_examples/decomposition/plot_pca_iris.html#sphx-glr-auto-examples-decomposition-plot-pca-iris-py import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes…

Ruoyi安装部署(linux环境、前后端不分离版本)

目录 简介 1 新建目录 2 安装jdk 2.1 jdk下载 2.2 解压并移动文件夹到/data/service目录 2.3 配置环境变量 3 安装maven 3.1 进入官网下载最新的maven 3.2 解压并移动文件夹到/data//service目录 3.3 配置环境变量 3.4 配置本地仓库地址与阿里云镜像 4 安装git 4.…

Linux centos7 高频词统计

如何统计文章中高频词?是我们经常遇到的问题,也是多场合考察个人知识整合能力的重要手段。招聘经典问题:linux中命令行统计文件中前10个高频词。 在讨论此问题中,主要应用到的知识点有:排序、去重、单词查询、grep、sed和awk使用…

AWS解决方案日:Web 3业务安全方案

近日,AWS合作伙伴之Web3解决方案日在香港举办,多家科技公司专家和企业代表就WEB 3.0方案、AI创新和Web 3.0安全进行了探讨。顶象现场展示了Web 3.0业务安全解决方案。 NFT是Web 3.0典型场景之一。NFT基于区块链技术的非同质化代币,具有不可分…

行为型(七) - 访问者模式

一、概念 访问者模式(Visitor Pattern):我们使用了一个访问者类,改变元素类的执行算法。通过这种方式,元素的执行算法可以随着访问者改变而改变。 优点:把业务操作跟具体的数据结构解耦。 二、实现 我们…

利用ANARCI标识CDR区域

brief 总有一些朋友丢给我一些抗体蛋白序列,希望我把抗体的框架区和高变区标识出来。 然后ANARCI 可以对抗蛋白序列的氨基酸进行编号和allign。 所以我想ANARCI可以解决这个问题。 安装 github开源软件: https://github.com/oxpig/ANARCI 也有网页版的: https://opig.st…

Quickstart: MinIO for Linux

单节点部署教程 1.安装Minio服务端 //wget下载二进制文件 wget https://dl.min.io/server/minio/release/linux-amd64/minio //赋予权限 chmod x minio //将minio可执行文件移入usr/local/bin目录下,使得minio可以全局执行 sudo mv minio /usr/local/bin/ 2.启动Mi…

React基础入门之虚拟Dom

React官方文档:https://react.docschina.org/ 说明 重要提示:本系列文章基础篇总结自尚硅谷课程,且采用类式写法!!最新的函数式组件写法见高级篇。 本系列文档旨在帮助vue同学更快速的学习react,如果你很…

OpenAI推出GPT-3.5Turbo微调功能并更新API;Midjourney更新局部绘制功能

🦉 AI新闻 🚀 OpenAI推出GPT-3.5Turbo微调功能并更新API,将提供GPT-4微调功能 摘要:OpenAI宣布推出GPT-3.5Turbo微调功能,并更新API,使企业和开发者能够定制ChatGPT,达到或超过GPT-4的能力。通…

如何使用装rancher安装k8s集群(k8s集群图形化管理工具)

前言 kubernetes集群的图形化管理工具主要有以下几种: 1、 Kubernetes Dashborad: Kubernetes 官方提供的图形化工具 2、 Rancher: 目前比较主流的企业级kubernetes可视化管理工具 3、各个云厂商Kubernetes集成的管理器 4、 Kuboard: 国产开源Kubernetes可视化管理…

异地容灾备份方式有哪些?异地容灾备份是什么意思

在当今的数字时代,数据已经成为公司的主要资产。然而,数据的丢失或损坏可能会给公司带来巨大的损失。因此,异地容灾备份已成为企业应考虑的因素。本文将详细介绍异地容灾备份的形式,以帮助企业更好地维护其重要数据。 什么是异地…

自定义QGraphcsItem旋转移动缩放组合

简单的记录下学习自定义QGraphicsItem 移动、旋转、缩放、组合。 1. QGraphicsView缩放 通过鼠标滚轮缩放整个视图 重写GraphicsView的wheelEvent(QWheelEvent *event)事件 // //QttGraphicsView::QttGraphicsView(QGraphicsScene* scene, QWidget* parent) : QGraphicsView(s…