Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Florian Super JLI'ler
Alter: 36 Anmeldedatum: 20.06.2003 Beiträge: 302
Medaillen: Keine
|
Verfasst am: 17.07.2003, 07:31 Titel: schließen eines Fensters |
|
|
Könnt ihr mir da helfen.
Wenn ich das Fenstern schließe läauft im hintergrund immer noch der Prozess von dem Projekt.
Wie kann ich das Fenster und den Prozess Schließen |
|
Nach oben |
|
|
abc_d JLI Master Trainee
Alter: 34 Anmeldedatum: 27.01.2003 Beiträge: 615
Medaillen: Keine
|
Verfasst am: 17.07.2003, 08:04 Titel: |
|
|
Du machst in die Callback funktion
Code: |
case WM_DESTROY:
PostQuitMessage(0);
break;
|
das schickt eine Nachricht und die Schleife bricht ab:
Code: |
// Diese Schleife läuft bis die Nachricht WM_QUIT empfangen wird
while(GetMessage(&msg,NULL,0,0))
{
// Nachricht an die Callbackfunktion senden
TranslateMessage(&msg);
DispatchMessage(&msg);
}
|
das programm kommt zu return 0; und ist fertig! _________________ http://mitglied.lycos.de/sarti/linuxisevil.gif Linux is evil - get the fact.
Never touch a running System - der Systemling |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 17.07.2003, 11:37 Titel: |
|
|
Bist du dir da sicher, dass diese Schleife aufhört, wenn das Fenster geschlossen wird?
Wenn das nicht klappt, würde ich noch folgendes schreiben:
Code: |
if(msg.message==WM_QUIT) break; |
_________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Mr.X Junior JLI'ler
Anmeldedatum: 15.04.2003 Beiträge: 88
Medaillen: Keine
|
Verfasst am: 17.07.2003, 11:58 Titel: |
|
|
Die Schleife wird beendet, weil GetMessage eine 0 zurückliefert bei WM_QUIT. |
|
Nach oben |
|
|
Mr. Data Mini JLI'ler
Anmeldedatum: 16.09.2002 Beiträge: 39
Medaillen: Keine
|
Verfasst am: 17.07.2003, 13:54 Titel: |
|
|
Das Problem hatte ich auch mal
Bei mir lags daran das der Funktion GetMessage(...) den Handle des Fensters und nicht NULL übergeben hatte
Vielleicht ist es bei dir genauso _________________ nothing is inmpossible |
|
Nach oben |
|
|
Mr.X Junior JLI'ler
Anmeldedatum: 15.04.2003 Beiträge: 88
Medaillen: Keine
|
Verfasst am: 17.07.2003, 14:24 Titel: |
|
|
Mr. Data hat Folgendes geschrieben: | Das Problem hatte ich auch mal
Bei mir lags daran das der Funktion GetMessage(...) den Handle des Fensters und nicht NULL übergeben hatte |
Auszug aus der MSDN für "BOOL GetMessage(...);":
"If the function retrieves a message other than WM_QUIT, the return value is nonzero.
If the function retrieves the WM_QUIT message, the return value is zero."
Du kannst also kein Fenster-Handle erhalten haben durch GetMessage() bei WM_QUIT. |
|
Nach oben |
|
|
Mr. Data Mini JLI'ler
Anmeldedatum: 16.09.2002 Beiträge: 39
Medaillen: Keine
|
Verfasst am: 17.07.2003, 16:20 Titel: |
|
|
Ok ich hab das 'ich' im Satz vergessen.
Trotzdem, ich schrieb übergeben nicht erhalten und es gibt einen Parameter vom Typ HWND und an diesen Parameter hatte ich nicht NULL sondern eben eine Variable vom Typ HWND
Daran lags. _________________ nothing is inmpossible |
|
Nach oben |
|
|
Mr.X Junior JLI'ler
Anmeldedatum: 15.04.2003 Beiträge: 88
Medaillen: Keine
|
Verfasst am: 17.07.2003, 17:04 Titel: |
|
|
k,sorry |
|
Nach oben |
|
|
|