Когда я закрываю окно приложения в PyQt, консоль все еще работает в фоновом режиме, а процесс python.exe присутствует до тех пор, пока я не закрою консоль. Я думаю, sys.exit(app.exec_())
не может нормально работать.
Mainscript (который открывает первое окно):
if __name__ == '__main__':
from firstwindow import main
main()
Первое окно
При нажатии кнопки:
self.close() #close firstprogram
Start() #function to open mainprogram
Начинать():
def Start():
global MainWindow
MainWindow = QtWidgets.QMainWindow()
ui = genui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
main () (предлагается здесь ):
def main_window():
return form
def main():
global form
app = QtWidgets.QApplication(sys.argv)
form = MyApp()
form.show()
app.exec_()
sys.exit(app.exec_())
exec_()
, он просто будет сидеть и ничего не делать, и вы не сможете взаимодействовать с ним, потому что вы уже закрыли главное окно. Избавьтесь от первойapp.exec_()
строки. - person ekhumoro   schedule 14.11.2015