2017-04-22 8 views
0

私はPyQtを使ってウィンドウを閉じて別のウィンドウを開こうとしていますが、これは起こっていません。誰かが私を助けることができましたか?ここで実行を終了せずにウィンドウを閉じて別のPyQtを開く

は、私は基本的にやっているものです:

class App(QtGui.QMainWindow, MainWindow.Ui_MainWindow): 

    def __init__(self, privilegio, db): 
     super(self.__class__, self).__init__() 
     self.setupUi(self) 
     self.get_thread = None 
     self.db = db 
     self.privilegio = privilegio 

class Login(QtGui.QMainWindow, LoginWindow.Ui_McDonalds): 

    def __init__(self): 
     super(self.__class__, self).__init__() 
     self.setupUi(self) 
     self.pushButton.clicked.connect(self.verify) 
     self.db = None 
     self.db_connection = False 
     self.connect_db() 


def login(): 
    app = QtGui.QApplication(sys.argv) 
    form_login = Login() 
    form_login.show() 
    sys.exit(app.exec_()) 


if __name__ == '__main__': 

    login() 

if password == result[0][0]: 
    main(result[0][1], self.db) 
+0

あなたは確かに正確m0dem @ 'sys.exit' – m0dem

+0

を行うにはしたくないが、私はこの行を入れていない場合は、ウィンドウが開かない... –

答えて

0

あなたはsys.exit(app.exec_())

の前に置くことによって window2.show

に最初のウィンドウのクローズイベント(button.clickedまたはいくつかの他)を接続することができます

window1.rejected.connect(window2.show) 

または最初のウィンドウで__init__

self.rejected.connect(window2.show) 

または

self.my_button.clicked.connect(window2.show) 
+1

感謝あなたは、問題を解決するために、sys.exit()の前にウィンドウを宣言しています。 –

関連する問題