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

【Python】【PyQt5】设置事件绑定(例为按钮点击显示提示框)

前言

上篇文章我们讲了如何创作一个UI界面,并将其使用代码显示出来,这篇文章我们来讲讲事件的绑定
为增加文章趣味性,此篇文章我们将以点击窗口中的按钮来后并显示一个提示框

修改上次代码(优化)

上篇文章我所讲的要记住的代码模板其实是有问题,这是全新代码

import sys
from welcome import *
from PyQt5.QtWidgets import QMessageBox

class welcome1(Ui_MainWindow):
    def __init__(self,main_window):
        self.main_window = main_window
        self.setupUi(main_window)
        self.pushButton.clicked.connect(self.showMessage)
    def showMessage(self):
        QMessageBox.information(self.main_window,"CSDN","welcome CSDN",QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes)

        

if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = welcome1(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

修改了的地方

我们将if name == 'main里面的ui.setupUi(MainWindow)删掉了,而是将其放在了我们的主类welcome1中,变成了self.setupUi(main_window)
为什么要这样改呢,因为等会我们在进行事件绑定的时候需要进行对窗口初始化,但是一个程序里面只能对窗口初始化一次

新增的代码

新怎了一个类welcome1

class welcome1(Ui_MainWindow):
	# 省略了一些代码

在类中定义了一个**——init——**函数,在此函数中用来写初始化代码和时间绑定

self.main_window=main_window

此代码也是用来初始化窗口的

self.pushButton.clicked.connect(self.showMessage)

此代码是用来使目标按钮绑定上等会要使用函数
self.showMessage代码里showMessage是welcome1类中定义好的函数

def showMessage(self):
        QMessageBox.information(self.main_window,"CSDN","welcome CSDN",QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes)

此代码是显示窗口的函数,大家可以根据运行结果和以上代码中函数的参数进行比对

最后

以上代码中初始化窗口的代码需要按顺序写否则可能导致报错

相关文章:

  • 生物信息复习笔记(2)——测序基本概念
  • xampp安装教程与配置
  • React Router使用方法
  • 单片机开发资源分析实战——以STM32F103ZET6为例子,分析我们的单片机
  • matlab的meshgrid
  • 从零构建大语言模型全栈开发指南:第二部分:模型架构设计与实现-2.1.1自注意力机制(Scaled Dot-Product Attention)的逐行代码实现
  • kali没网 | 配置代理
  • 算法-分治
  • VSCode相关文件折叠展开
  • 【数据分析】有关前文的复习
  • 数据结构——树
  • 《大数据视角下美团优选消费者购买决策影响因素研究》开题报告
  • nest学习(5)
  • 《AI大模型趣味实战 》第7集:多端适配 个人新闻头条 基于大模型和RSS聚合打造个人新闻电台(Flask WEB版) 1
  • Web网页
  • Windows下编译安装Qt5.15.0指南
  • Kubernetes 学习详细资料
  • 【Python机器学习】3.7. 主成分分析(PCA)实战
  • HT9126DA芯片为生活增添光彩的LED灯IC
  • Qt程序增加Dump文件保存
  • 紧盯大V、网红带货肉制品,整治制售假劣肉制品专项行动开展
  • 央行:今日起下调再贷款利率0.25个百分点
  • 大学2025丨专访清华教授沈阳:建议年轻人每天投入4小时以上与AI互动
  • 特朗普要征电影关税惊扰全球电影业,“让好莱坞再次伟大”或现反效果
  • 证券时报头版:巴菲特留给投资界的珍贵启示
  • 韩国总统选举民调:共同民主党前党首李在明支持率超46%