本文摘自php中文网,作者不言,侵删。
这篇文章主要为大家详细介绍了PyQt5每天必学之弹出消息框,具有一定的参考价值,感兴趣的小伙伴们可以参考一下默认情况下,如果我们点击标题栏上的 X 按钮,QWidget 关闭。有时候,我们需要改变这个默认行为。例如,如果我们有一个文件,要在编辑器中打开,我们可以先显示一个消息框,确认打开与否的操作。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | import sys
from PyQt5.QtWidgets import QApplication, QWidget, QMessageBox
class Example(QWidget):
def __init__( self ):
super ().__init__()
self .initUI()
def initUI( self ):
self .setGeometry( 300 , 300 , 300 , 220 )
self .setWindowTitle( '消息盒子' )
self .show()
def closeEvent( self , event):
reply = QMessageBox.question( self , '信息' , '确认退出吗?' ,
QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
if reply = = QMessageBox.Yes:
event.accept()
else :
event.ignore()
if __name__ = = '__main__' :
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
|
如果我们关闭 QWidget控件,将产生 QCloseEvent 事件。修改控件特性我们需要重新实现 closeEvent() 事件处理程序。
1 2 | reply = QMessageBox.question( self , '信息' , '确认退出吗?' ,
QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
|
我们显示一个消息框,它有两个按钮:Yes和No。第一个字符串出现在标题栏。第二个字符串是对话框中显示的消息文本。第三个参数指定弹出的对话框中的按钮组合。最后一个参数是默认按钮,它是具有初始键盘焦点的按钮。返回值被存储在reply 变量中。
1 2 3 4 | if reply = = QMessageBox.Yes:
event.accept()
else :
event.ignore()
|
在这里我们使用 if 测试返回值。如果我们点击 Yes 按钮,我们接受了按钮控件的关闭并执行应用程序的终止事件。否则,我们忽略关闭事件。
程序执行后点击右上角的 x 弹出确认退出消息盒子


相关推荐:
PyQt5实现下载进度条效果
PyQt5每天必学之进度条效果
PyQt5每天必学之QSplitter实现窗口分隔
以上就是PyQt5每天必学之弹出消息框的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
Python求绝对值的方法有哪些
Python运行其他程序的方法实例详解
数学建模可以用Python吗
Python能做回归么
Python count函数用法详解
Python导入模块的关键字是什么
知道Python 为什么要有 pass 语句?
了解Python中np是做什么的
Python怎么导入模块
Python删除list中的重复元素
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » PyQt5每天必学之弹出消息框