2010-02-07 7 views
5

J'ai une fenêtre principale et une boîte de dialogue non-modale. Je suppose que le dialogue non-modal devrait se fermer quand je ferme la fenêtre principale. Au lieu de cela, si j'ouvre une boîte de dialogue non-modale, je devrais fermer manuellement les deux - si je ferme la fenêtre principale, la boîte de dialogue non-modale restera, et je dois la fermer manuellement.Qt, le dialogue non-modal ne se ferme pas

# App and main window 
app = QtGui.QApplication(sys.argv) 
window = Window() 
window.show() 
sys.exit(app.exec_()) 

class Window ... : 
    ... 
    def func: 
     non_modal_dialog = NonModalDialog() 
     non_modal_dialog.show() 
    ... 

Que dois-je faire quand je ferme la fenêtre principale tous les dialogues permanents seront automatiquement fermés?

Merci.

Répondre

8

Avez-vous fait du widget parent de la boîte de dialogue la fenêtre principale ou au moins une sorte de descendant de la fenêtre principale? Si vous faites cela, la boîte de dialogue disparaîtra lorsque la fenêtre le fera. Je connais Qt mais pas Python, mais ce n'est pas le cas de votre exemple de code.

+0

Oui, exactement! Je vous remercie! – demalexx

Questions connexes