ich stehe vor einem Problem.
Ich habe ein MDI- Fenster, in diesem existiert eine Methode, welche eine Ausführungszeit von etwa 20 Sekunden hat.
Damit, wenn diese Methode aufgerufen wird, nicht die GUI steht, rufe ich ständig ein QCoreApplication::processEvents(); auf.
Funktioniert soweit auch alles gut, nur bis zu einem Problem.
Schließt der Benutzer das MDI- Fenster, während sich die Anwendung in dieser Methode befindet, stürzt mein Programm hab, da diese Methode nun auf nicht mehr existierende Elemente zugreift.
Beispiel:
Code: Alles auswählen
MDIWindow::doSomething() {
... some code ...
# Benutzer schließt jetzt das MDI Fenster
... some code ...
QCoreApplication::processEvents(); // Hier wird nun das Fenster geschlossen, MDIWindow wird somit zerstört.
ui->element; // Jetzt wird auf ein Element zugegriffen, welches nicht mehr existiert -> Programmabsturz
}