PySide学习笔记第四章-消息框
2016-04-29 09:40
447 查看
默认情况下,如果我们点击X 按钮是可以关闭QtGui.QWidget--窗口,有时候我们想要重新定义该操作,如下:该程序展示了,当我们点击关闭按钮时,会显示一个提示信息
下面有一个函数我们需要用到,当我们关闭QtGui.QWidget 时会产生一个 QCloseEvent 事件,为了更改窗口的响应方式,我们需要重定义closeEvent() 事件句柄(event handler 事件句柄;事件处理程序)
下面有一个函数我们需要用到,当我们关闭QtGui.QWidget 时会产生一个 QCloseEvent 事件,为了更改窗口的响应方式,我们需要重定义closeEvent() 事件句柄(event handler 事件句柄;事件处理程序)
import sys from PySide import QtGui class Example(QtGui.QWidget): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 250, 150) self.setWindowTitle('Message box') self.show() def closeEvent(self, event): reply = QtGui.QMessageBox.question(self, 'Message', # 创建一个信息框,参数说明: # Message:信息框的title, "Are you sure to quit?", QtGui.QMessageBox.Yes | # Are you sure to quit?:信息框展示的信息 QtGui.QMessageBox.No, QtGui.QMessageBox.No) # 信息框的两个按钮 Yes,No ,最后一个参数:默认按钮 if reply == QtGui.QMessageBox.Yes: # 窗口的响应信息存在reply中 event.accept()# 接受信息并关闭窗口 else: event.ignore()# 忽略信息 def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()
相关文章推荐
- 一个程序员说
- Linux下使用NDK编译FFMPEG(libstagefright)
- iOS开发之静态库.a的制作教程
- 关于Ubuntu apt-get update 失败,问题解决
- 数据结构算法——单链表
- Flex开发实战(二)--Flash Builder 4.7下载和安装及破解方法
- ERROR 2002 (HY000): mysql
- 'VBoxManage' is not recognized as an internal or external command, operable program or batch file.
- Unity3D 5.3.4的UGUI编程
- 控件字典
- java排序之快排
- 电学发展史
- vs2015太不稳定了
- 文章标题
- Fragment生命周期新认识
- Python 安装环境
- Java URL自定义私有网络协议
- UISlider滑动问题
- struts2标签库详解
- 在无头单链表的一个非头节点前插入一个节点