Foros Python

Versión completa: closeEvent
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
buenas tardes,mi pregunta es la siguiente tengo un form creado con PyQt5 y lo que quiero es mostrar un mensaje al cerrar el form pero no me funciona el closeEvent, simplemente se cierra el form y no me muestra el mensaje, aquí el código, gracias.

Código:
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QDialog, QApplication, QMessageBox
from PyQt5.QtGui import QCloseEvent
class frmLogin(QDialog):
   def __init__(self):
       super().__init__()
       self.initUI()

   def initUI(self):
       self.setWindowTitle("Log In")
       self.resize(100,200)
       self.setwindowFlags(Qt.MSWindowsFixedSizeDialogHint)

   def closeEvent(self, event):
    QMessageBox.information(self,"Mensaje","Cerrando aplicaion")
       event.accept()    


if __name__ == "__main__":    
   app = QApplication(sys.argv)
   dialog = QDialog()
   dialog.show()
   sys.exit(app.exec_())
Hola. El método es correcto, pero al final no estás creando tu diálogo. Debería ser:

  1. dialog = frmLogin()


Saludos!