python 关闭窗口事件_PyQt5 closeEvent关闭事件退出提示框原理解析
这篇文章主要介绍了PyQt5 closeEvent关闭事件退出提示框原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
如果关闭QWidget,就会产生一个QCloseEvent,并且把它传入到closeEvent函数的event参数中。改变控件的默认行为,就是替换掉默认的事件处理。
原生的英文提示框:
# 添加一个退出的提示事件
def closeEvent(self, event):
"""我们创建了一个消息框,上面有俩按钮:Yes和No.第一个字符串显示在消息框的标题栏,第二个字符串显示在对话框,
第三个参数是消息框的俩按钮,最后一个参数是默认按钮,这个按钮是默认选中的。返回值在变量reply里。"""
reply = QMessageBox.question(self, 'Message',"Are you sure to quit?",
QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
# 判断返回值,如果点击的是Yes按钮,我们就关闭组件和应用,否则就忽略关闭事件
if reply == QMessageBox.Yes:
event.accept()
else:
event.ignore()
修改成中文样式:
# 添加中文的确认退出提示框1
def closeEvent(self, event):
# 创建一个消息盒子(提示框)
quitMsgBox = QMessageBox()
# 设置提示框的标题
quitMsgBox.setWindowTitle('确认提示')
# 设置提示框的内容
quitMsgBox.setText('你确认退出吗?')
# 设置按钮标准,一个yes一个no
quitMsgBox.setStandardButtons(QMessageBox.Yes | QMessageBox.No)
# 获取两个按钮并且修改显示文本
buttonY = quitMsgBox.button(QMessageBox.Yes)
buttonY.setText('确定')
buttonN = quitMsgBox.button(QMessageBox.No)
buttonN.setText('取消')
quitMsgBox.exec_()
# 判断返回值,如果点击的是Yes按钮,我们就关闭组件和应用,否则就忽略关闭事件
if quitMsgBox.clickedButton() == buttonY:
event.accept()
else:
event.ignore()
# 添加中文的退出提示框2
def closeEvent(self, event):
# 创建一个消息盒子(提示框)
quitMsgBox = QMessageBox()
# 设置提示框的标题
quitMsgBox.setWindowTitle('确认窗口')
# 设置提示框的内容
quitMsgBox.setText('你确定退出吗?')
# 创建两个点击的按钮,修改文本显示内容
buttonY = QPushButton('确定')
buttonN = QPushButton('取消')
# 将两个按钮加到这个消息盒子中去,并指定yes和no的功能
quitMsgBox.addButton(buttonY, QMessageBox.YesRole)
quitMsgBox.addButton(buttonN, QMessageBox.NoRole)
quitMsgBox.exec_()
# 判断返回值,如果点击的是Yes按钮,我们就关闭组件和应用,否则就忽略关闭事件
if quitMsgBox.clickedButton() == buttonY:
event.accept()
else:
event.ignore()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
python 关闭窗口事件_PyQt5 closeEvent关闭事件退出提示框原理解析相关推荐
- 关闭是否只查看安全传送的网页内容提示框 和 是否允许运行软件,如ActiveX控件和插件提示框...
关闭是否只查看安全传送的网页内容提示框 最新编写 爬虫程序,运行程序后,电脑就总是出现下面这个提示框,一遍遍点"是"或"否"繁琐又麻烦.我看得有点不耐烦了.于是 ...
- 关闭是否只查看安全传送的网页内容提示框 和 是否允许运行软件,如ActiveX控件和插件提示框
关闭是否只查看安全传送的网页内容提示框 最新编写 爬虫程序,运行程序后,电脑就总是出现下面这个提示框,一遍遍点"是"或"否"繁琐又麻烦.我看得有点不耐烦了.于是 ...
- python如何进行格式化输出变量_Python变量格式化输出实现原理解析
print() 函数使用以 % 开头的转换说明符对各种类型的数据进行格式化输出. 转换说明符(Conversion Specifier)只是一个占位符(也称为格式化操作符),它会被后面表达式(变量.常 ...
- python图像切割成多边形_python通过opencv实现图片裁剪原理解析
这篇文章主要介绍了python通过opencv实现图片裁剪原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 图像裁剪的基本概念 : 图像裁剪是 ...
- python如何关闭窗口仍能运行_Python在退出时关闭自己的CMD shell窗口
让我们首先分析两个发布的Python脚本行在执行Python脚本时真正做了些什么.感谢eryksun进行深入调查,真正使用Python导致正确的描述,现在可以在下面阅读. os.system()导致在 ...
- python多窗口传递信息_PyQT5 中两个界面之间数据传递
在使用PyQT5做GUI桌面应用程序设计时,经常需要对在两个界面之间做信号的传递,这个时候我们需要通过建立信号pyqtSignal 然后通过Connect 相应的槽函数来完成界面之间的数据传递. 1. ...
- python logging模块的作用及应用场景_Python logging模块原理解析及应用
一.logging日志模块等级 常见log级别从高到低: CRITICAL >ERROR >WARNING >INFO >DEBUG,默认等级为WARNING,即>=WA ...
- 拦截QT关闭窗口的CloseEvent
写程序遇到了QTimer启动以后可以在普通函数(例如槽函数)里面停止,但是无法在析构函数里停止的问题.想方设法皆无果,最后之得从关闭窗口上下功夫,关闭窗口时判断如果timer还是启动状态(即后台进程还 ...
- 微信内置浏览器点击“返回”关闭窗口
场景:开发微信内的H5活动,需要进行微信授权,我们采用的是在一个静态页面(只有js,所以是个空白页面)内进行授权,授权后再跳转到活动主页. 客户需求:从活动主页返回时不显示这个授权页面(空白页面),直 ...
最新文章
- 剑指offer(49)把字符串转换成整数。
- Linux/Centos7系统管理之深入理解Linux文件系统与日志分析
- 我看UNIX与Windows的本质区别
- css设置背景图片缩小,css3 设置背景图片大小(缩略图形式缩小)
- oracle for函数,oracle分区表述的FOR语句(一)
- P4427-[BJOI2018]求和【LCA】
- 计算机备份u盘,如何备份电脑系统到u盘
- 49 张图详解 WiFi 的 26 个知识点
- 服务端渲染SSR及实现原理
- 学科前沿讲座 文本分类TextClassfication
- Maven Helper 安装使用
- Android studio中如何调用setpositivebutton函数
- 分享5款堪称神器的免费软件,建议先收藏再下载
- 投资顾问需要什么条件
- 16个核心概念带你入门 Kubernetes
- Java类和对象(如何理解类和对象)
- ##MYfirstLog
- 毕业论文小论文查重吗?
- Cocosd2d-js 实现模态对话框
- 最新Node.JS入门视频教程20集 Node.JS快速入门编程教材 Node.JS视频(偏重基础)
热门文章
- ip4标准(ip4网段)
- 黑马程序员-----------------交通灯管理系统
- 小程序银行卡手机号验证
- 基于ssm+mysql+jsp汽车销售管理系统
- windows11创建文件夹的键盘快捷方式 - Ctrl+Shift+N
- 细说LoadRunner参数化
- Wind量化接口常见错误码
- 拼多多黄峥激流勇退,单身的他将去追求爱情?
- Python中读取txt文件的三种可行办法
- 【JAVA - POI 合集】之 POI 操作word 图表,柱状图,折线图,雷达图,条形图 poi4.1.2