Comment quitter l'application Mac OS X correctement, à la fermeture de la principale (la seule)? Je connais là une méthode - (void)windowWillClose:(NSNotification *)notification
en NSWindowDelegate
. Mais ce n'est pas tout à fait approprié dans mon cas, car il est appelé avant queNSWindow
se ferme.Quitter l'application lorsque NSWindow se ferme
Répondre
Vous ne pouvez pas avoir l'événement windowDidClose
car la notification qui l'accompagne contient un objet non valide (la fenêtre est susceptible d'avoir été désallouée à la fermeture). Pour obtenir ce dont vous avez besoin, faites votre classe le délégué de la demande, et mettre en œuvre la méthode suivante:
- (BOOL) applicationShouldTerminateAfterLastWindowClosed: (NSApplication *) theApplication;
De cette méthode, le retour YES
.
Si votre objet de contrôleur possède une instance dans MainMenu.nib
, établissez simplement une connexion à partir du propriétaire du fichier (ce qui signifie l'objet Application dans le fichier MainMenu.nob). Contrôle-Faites glisser le propriétaire du fichier vers votre objet et connectez la prise de délégué.
Ou dans le code source, mettez quelque chose comme ceci dans votre méthode d'initialisation de l'objet contrôleur:
[NSApp setDelegate: self];
- 1. Comment être notifié lorsque NSWindow se ferme
- 2. Quitter tous les formulaires quand on ferme
- 3. Cookie détruite lorsque le navigateur se ferme
- 4. L'application VB.NET ne se ferme pas complètement
- 5. Socket se ferme automatiquement
- 6. quelle méthode d'activité principale s'exécute lorsque l'application se ferme?
- 7. En cours d'exécution Un minuteur lorsque l'application se ferme
- 8. Appel d'une méthode de page lorsque le navigateur se ferme
- 9. Comment arrêter un thread lorsque la fenêtre se ferme et
- 10. NSStream se ferme
- 11. MPMoviePlayerViewController se ferme inopinément
- 12. Comment se débarrasser des processus fils Java lorsque mon application Java se ferme/se bloque?
- 13. Android TextView.setText force se ferme
- 14. VB.NET: La boîte de dialogue se ferme-t-elle lorsque vous appuyez sur Entrée?
- 15. Comment vous assurer que les paramètres NSUserDefaults sont enregistrés sur le disque lorsque l'application se ferme?
- 16. WebSocket se ferme sur l'envoi
- 17. Invalider la session avant que l'application iPhone ne se ferme
- 18. Fenêtre Facebox se ferme après soumettre
- 19. L'application Winform ne se ferme pas
- 20. Android - fichier Persister lorsque l'application ferme
- 21. Quitter la boucle While lorsque le flux est fermé?
- 22. Boucle prématurément Quitter
- 23. .NET StreamReader ne se ferme pas
- 24. NSWindow Exemples
- 25. Une application Cocoa se ferme-t-elle lorsque la fenêtre principale est fermée? Comment faire pour fermer une application Cocoa lorsque la fenêtre principale est fermée?
- 26. glade aboutDialog ne se ferme pas
- 27. ADOQuery se ferme après le constructeur
- 28. L'application IOS4.2 se ferme avec EXC_BAD_ACCESS
- 29. GXT KeyListener.componentKeyDown() se ferme immédiatement MessageBox.alert()
- 30. Socket ne se ferme pas correctement
Merci! N'a pas remarqué cette méthode dans 'NSApplicationDelegate'. :) –