[英]close pyqt4 window automatically
我有一个使用PyQt4创建消息框的python代码。 我的代码的一些行是:
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.ui.pushButton.clicked.connect(self.clear_win)
当我单击按钮时,窗口关闭。
现在,我想自动关闭它。 我的意思是,当窗口(消息框)消失时,它可以在几秒钟后关闭并且不需要按下按钮。
谢谢。
您可以添加一个计时器,并在计时器到期时调用self.clear_win
。
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.ui.pushButton.clicked.connect(self.clear_win)
QtCore.QTimer.singleShot(3000, self.clear_win)
实际上,我们在pyqt应用程序的末尾使用sys.exec_()
函数,这是所有错误的地方... self.close()关闭对话框,但不关闭应用程序。 sys.exec_(
)将接受手动执行的操作或接受关闭按钮的单击。 如果您删除它,则不会向您显示该应用程序,否则它将自动关闭。 如果您想在某个时间后关闭应用程序...则可以使用sleep(5), self.exec_()
将自动关闭应用程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.