No se puede ocultar una ventana cuando el tamaño de la ventana se maximiza en pyqt

Tengo dos ventanas, quiero ocultarlo después de tres segundos utilizando el temporizador Qt, pero se superpone … probablemente se produce cuando el tamaño de la ventana se establece en “showMaximized”

from PyQt4 import QtCore, QtGui from PyQt4 import QtGui from PyQt4.QtCore import Qt, QPoint try: _fromUtf8 = QtCore.QString.fromUtf8 except AttributeError: def _fromUtf8(s): return s try: _encoding = QtGui.QApplication.UnicodeUTF8 def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig, _encoding) except AttributeError: def _translate(context, text, disambig): return QtGui.QApplication.translate(context, text, disambig) class Ui_Form(object): def setupUi(self, Form): Form.setObjectName(_fromUtf8("Form")) Form.showMaximized() Form.setStyleSheet(_fromUtf8("background-color: rgb(0, 0, 0);")) self.label = QtGui.QLabel(Form) self.label.setGeometry(QtCore.QRect(450, 317, 300, 61)) self.label.setStyleSheet(_fromUtf8("font: 75 60pt \"Tlwg Mono\";color: rgb(255, 255, 255);")) self.label.setObjectName(_fromUtf8("label")) self.retranslateUi(Form) QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): Form.setWindowTitle(_translate("Form", "Form", None)) self.label.setText(_translate("Form", "omniOS", None)) class Ui_Dialog1(object): def setupUi(self, Dialog): Dialog.setObjectName(_fromUtf8("Dialog")) Dialog.showMaximized() Dialog.setStyleSheet(_fromUtf8("background-color: rgb(0, 0, 0);")) QtCore.QMetaObject.connectSlotsByName(Dialog) self.centralwidget = QtGui.QWidget(Dialog) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog) def retranslateUi(self, Dialog): Dialog.setWindowTitle(_translate("Dialog", "Dialog", None)) class Dialog(QtGui.QDialog, Ui_Form): def __init__(self, parent=None): super(Dialog, self).__init__(parent) self.setupUi(self) class Dialog1(QtGui.QDialog, Ui_Dialog1): def __init__(self, parent=None): super(Dialog1, self).__init__(parent) self.setupUi(self) def paintEvent(self, event): painter = QtGui.QPainter(self) painter.setPen(QtGui.QPen(QtCore.Qt.white)) painter.drawArc(QtCore.QRectF(640, 330, 35, 35), 0, 5750) if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) w1=Dialog() w2=Dialog1() def on_timeout(): w1.hide() w2.show() QtCore.QTimer.singleShot(3000, on_timeout) sys.exit(app.exec_()) 

Lo que debo hacer es obtener una segunda ventana después de tres segundos cuando el tamaño se establece para maximizar.

  Form.showMaximized() 

Este cambio para (form.resize) está funcionando lo que esperaba. Cualquier ayuda por favor

No observa que w1 está cerrado porque w2 está por encima de w1, pero si está funcionando, por lo que señala en los comentarios, entiendo que quiere que inicialmente solo se vea w1 y luego de 3 segundos se muestra w2 y w1 está oculto, considerando que La solución es la siguiente:

 if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) w1=Dialog() w2=Dialog1() w2.hide() QtCore.QTimer.singleShot(3000, w1.hide) QtCore.QTimer.singleShot(3000, w2.showMaximized) sys.exit(app.exec_())