pyqt4入门教材 里面的程序,这个运行后没有弹出提示窗口啊,而且我觉得它这里没有调用到close_event

#!/usr/bin/python#-*-coding:utf-8-*-#Filename:pyqt_3_5.py#---------------------------... #!/usr/bin/python
# -*- coding: utf-8 -*-
# Filename: pyqt_3_5.py

#------------------------------------------------
#消息窗口
#------------------------------------------------
import sys
from PyQt4 import QtGui
#基本的GUI窗口部件都在QtGui模块中

class Message_box(QtGui.QWidget):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)

self.setGeometry(100, 100, 250, 150)
self.setWindowTitle('message_box')
#setWindowTitle()设置标题

def close_event(self, event):
reply = QtGui.QMessageBox.question(self, 'Message',\
'Are you sure to quit?', QtGui.QMessageBox.Yes,\
QtGui.QMessageBox.No)
if reply == QtGui.QMessageBox.yes:
event.accept()
else:
event.ignore()

app = QtGui.QApplication(sys.argv)
#每一个PyQt4程序都需要一个application对象,application类包含在QtGui模块中
#sys.argv可以让我们选择启动脚本的方式
tooltip = Message_box()
tooltip.show()
sys.exit(app.exec_())
看来要自问自答了,刚刚忽然想到会不会是程序自带了closeEvent这个函数,然后我把它重命名为close_event就不行了,然后一试,果然如此!!!closeEvent就是把窗口关掉的那个函数,无语死了!!!!
展开
 我来答
百度网友87b2a52
2013-05-03 · 知道合伙人软件行家
百度网友87b2a52
知道合伙人软件行家
采纳数:523 获赞数:3490
毕业于南京大学,硕士学位。10年软件研发经验。现任信息系统架构师。

向TA提问 私信TA
展开全部
你把这段程序,放在idle里面执行试试,也可以通过cmd到脚本路径下运行文件试试。
追问
这段程序我肯定是运行过,没有得出书上的结果我才提问的··········我是在linux下用命令行运行的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式