JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=3eaf5419bc85e348aa9300fc5af706dfMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

schließen eines Fensters

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Florian
Super JLI'ler


Alter: 36
Anmeldedatum: 20.06.2003
Beiträge: 302

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 07:31    Titel: schließen eines Fensters Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
abc_d
JLI Master Trainee


Alter: 34
Anmeldedatum: 27.01.2003
Beiträge: 615

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 08:04    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 11:37    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 11:58    Titel: Antworten mit Zitat

Die Schleife wird beendet, weil GetMessage eine 0 zurückliefert bei WM_QUIT.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr. Data
Mini JLI'ler



Anmeldedatum: 16.09.2002
Beiträge: 39

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 13:54    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 14:24    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Mr. Data
Mini JLI'ler



Anmeldedatum: 16.09.2002
Beiträge: 39

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 16:20    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 17:04    Titel: Antworten mit Zitat

k,sorry Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum