Anwendung wird nicht beendet
-
Hi,
ich will meine Anwendung aus einer Berechnung beenden und das geht nicht. Habe das Problem mal mit wenig Zeilen dargestellt:
void __fastcall TForm1::Button1Click(TObject *Sender) { for (int i = 0; i < 10; i++) { Caption = i; if (i == 5) { Beep(); Application->Terminate(); } Sleep(1000); } }Meine Anwendung sollte nun bei 5 beenden. Sie wird aber erst beendet, wenn die Schleife durch ist.
Wie kann ich da nachhelfen?
Phillip
-
Terminate beendet die Anwendung nicht sofort. Sie dazu auch Hilfe:
Terminate ruft die Funktion PostQuitMessage der Windows-API auf, um die Anwendung kontrolliert zu beenden. Die Methode Terminate wirkt somit nicht direkt.
Setze ein return dahinter und alles funzt.
-
Mach hinter Terminate noch ein break;