Как закрыть другие окна, когда главное окно закрыто в pyqt5Python

Программы на Python
Ответить
Anonymous
 Как закрыть другие окна, когда главное окно закрыто в pyqt5

Сообщение Anonymous »

Я хочу закрыть все остальные окна, открытые в главном окне, когда главное окно закрыто.
Пожалуйста, найдите ниже мин. код, который я тестировал:

Код: Выделить всё

from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QLabel, QVBoxLayout, QWidget

import sys

class AnotherWindow(QWidget):
"""
This "window" is a QWidget. If it has no parent, it
will appear as a free-floating window as we want.
"""
def __init__(self):
super().__init__()
layout = QVBoxLayout()
self.label = QLabel("Another Window")
layout.addWidget(self.label)
self.setLayout(layout)

class MainWindow(QMainWindow):

def __init__(self):
super().__init__()
self.button = QPushButton("Push for Window")
self.button.clicked.connect(self.show_new_window)
self.setCentralWidget(self.button)

def show_new_window(self, checked):
self.w = AnotherWindow()
self.w.show()

def close_another_window(self):
if self.w:
self.w.close()

app = QApplication(sys.argv)

w = MainWindow()
app.aboutToQuit.connect(w.close_another_window)
w.show()
app.exec()
Как показано выше, я пробовал использовать параметр aboutToQuit QApplication, но он вызывается только тогда, когда закрывается другое окно.
Я хочу автоматически закрывать другое окно при закрытии основного окна.>

Подробнее здесь: https://stackoverflow.com/questions/700 ... d-in-pyqt5
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»