Précédent   Forum du club des développeurs et IT Pro > Systèmes > Mac > XCode
XCode Forum d'entraide sur l'environnement de développement XCode
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 26/02/2013, 23h39   #1
kOrt3x
Rédacteur/Modérateur

 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 877
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 877
Points : 12 881
Points : 12 881
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Par défaut Quitter l'application en fermant la fenêtre

Bonjour,

Pour une application, je souhaiterai que quand on ferme la fenêtre de l'application (en cliquant sur le bouton rouge en haut à gauche) l'application se quitte.

J'ai testé avec la code suivant :

Code :
1
2
3
- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication {
    return YES;
}
Mais rien ne se pas.
Je n'ai pas d'erreur, pas de warning, rien.

Avez-vous un idée ? ou une autre solution ?
__________________
La rubrique Mac
Les cours & tutoriels Mac
Critiques de Livres Mac & iOS
FAQ Mac & iOS

________________________________________________________________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
Mon Livre sur AppleScript : AppleScript: L'essentiel du langage et de ses applications
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2013, 21h04   #2
PBELL
Membre éclairé
 
Homme Philippe
Directeur de projet
Inscription : septembre 2010
Messages : 71
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Directeur de projet
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : septembre 2010
Messages : 71
Points : 300
Points : 300
Par défaut Fermer une application avec le bouton rouge

Bonsoir Kort3x,
Cela fait longtemps que je n'ai pas écrit en Xcode, aussi je me contente de reprendre la dernière application que j'ai faite....il y a longtemps !

Voici le morceau de code qui fonctionne sur mon application :
Code :
1
2
3
4
5
6
7
8
-- ------------- procedure appelée lors de la fermeture d'une fenetre
on will close theObject
	if name of theObject is "Fenetre" then
		-- si on ferme la fenetre on quitte l'application et on sauve le données en cours
		Sauve_PList()
		quit
	end if
end will close
En fait mon code contenait d'autres fenêtres possibles donc j'ai plusieurs "if name of theObject is "xxx " then / else

Si ma mémoire est bonne, ( il faut que je retrouve mes sources en builder), il faut peut être associer l'interface Builder avec la routine Close theObject.
Essaye sans.
Sinon, je ferai une recherche sur mon code source, mais je n'ai pas le disque sous la main ce soir

Cordialement
PBELL est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2013, 21h51   #3
kOrt3x
Rédacteur/Modérateur

 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 877
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 877
Points : 12 881
Points : 12 881
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Citation:
Envoyé par PBELL Voir le message
Bonsoir Kort3x,
Cela fait longtemps que je n'ai pas écrit en Xcode, aussi je me contente de reprendre la dernière application que j'ai faite....il y a longtemps !

Voici le morceau de code qui fonctionne sur mon application :
Code :
1
2
3
4
5
6
7
8
-- ------------- procedure appelée lors de la fermeture d'une fenetre
on will close theObject
	if name of theObject is "Fenetre" then
		-- si on ferme la fenetre on quitte l'application et on sauve le données en cours
		Sauve_PList()
		quit
	end if
end will close
En fait mon code contenait d'autres fenêtres possibles donc j'ai plusieurs "if name of theObject is "xxx " then / else

Si ma mémoire est bonne, ( il faut que je retrouve mes sources en builder), il faut peut être associer l'interface Builder avec la routine Close theObject.
Essaye sans.
Sinon, je ferai une recherche sur mon code source, mais je n'ai pas le disque sous la main ce soir

Cordialement
Oui, mais ça c'est pour faire de l'AppleScript, pas de l'Ojbective-C.
__________________
La rubrique Mac
Les cours & tutoriels Mac
Critiques de Livres Mac & iOS
FAQ Mac & iOS

________________________________________________________________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
Mon Livre sur AppleScript : AppleScript: L'essentiel du langage et de ses applications
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2013, 10h53   #4
JeitEmgie
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 375
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 375
Points : 2 892
Points : 2 892
Citation:
Envoyé par kOrt3x Voir le message
Bonjour,

Pour une application, je souhaiterai que quand on ferme la fenêtre de l'application (en cliquant sur le bouton rouge en haut à gauche) l'application se quitte.

J'ai testé avec la code suivant :

Code :
1
2
3
- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication {
    return YES;
}
Mais rien ne se pas.
Je n'ai pas d'erreur, pas de warning, rien.

Avez-vous un idée ? ou une autre solution ?
Vous avez mis un point d'arrêt (ou un NSLog) pour vérifier que vous êtes bien appelé ?
La cause classique de ce genre de problème étant que la méthode n'est pas dans le delegate de l'application ou que l'outlet n'est pas connecté correctement.
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2013, 11h19   #5
kOrt3x
Rédacteur/Modérateur

 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 877
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 877
Points : 12 881
Points : 12 881
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Citation:
Envoyé par JeitEmgie Voir le message
Vous avez mis un point d'arrêt (ou un NSLog) pour vérifier que vous êtes bien appelé ?
La cause classique de ce genre de problème étant que la méthode n'est pas dans le delegate de l'application ou que l'outlet n'est pas connecté correctement.
Ok, j'ai effectivement tester avec un NSLog et je n'ai pas eu de résultat.
C'est au niveau de l'interface qu'il faut faire ça ?
Comment exactement ?
__________________
La rubrique Mac
Les cours & tutoriels Mac
Critiques de Livres Mac & iOS
FAQ Mac & iOS

________________________________________________________________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
Mon Livre sur AppleScript : AppleScript: L'essentiel du langage et de ses applications
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2013, 12h38   #6
kOrt3x
Rédacteur/Modérateur

 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 877
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 877
Points : 12 881
Points : 12 881
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Citation:
Envoyé par JeitEmgie Voir le message
Vous avez mis un point d'arrêt (ou un NSLog) pour vérifier que vous êtes bien appelé ?
La cause classique de ce genre de problème étant que la méthode n'est pas dans le delegate de l'application ou que l'outlet n'est pas connecté correctement.
C'est bon, avec tes indications et en suivant ce tuto : http://sylvain-gamel.developpez.com/...es/delegation/

J'ai réussi.
J'ai utilisé ce code qui fonctionne :

Code :
1
2
3
4
5
- (void) windowWillClose: (NSNotification *) notification
{
    NSLog(@"Yep, delegate was notified that window will be closed. Quitting application.");
    [NSApp terminate:nil];
}
Merci
__________________
La rubrique Mac
Les cours & tutoriels Mac
Critiques de Livres Mac & iOS
FAQ Mac & iOS

________________________________________________________________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
Mon Livre sur AppleScript : AppleScript: L'essentiel du langage et de ses applications
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2013, 15h09   #7
JeitEmgie
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 375
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 375
Points : 2 892
Points : 2 892
Citation:
Envoyé par kOrt3x Voir le message
C'est bon, avec tes indications et en suivant ce tuto : http://sylvain-gamel.developpez.com/...es/delegation/

J'ai réussi.
J'ai utilisé ce code qui fonctionne :

Code :
1
2
3
4
5
- (void) windowWillClose: (NSNotification *) notification
{
    NSLog(@"Yep, delegate was notified that window will be closed. Quitting application.");
    [NSApp terminate:nil];
}
Merci
là vous allez sortir à la première fenêtre fermée... pas à la dernière...
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2013, 15h27   #8
kOrt3x
Rédacteur/Modérateur

 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 877
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 877
Points : 12 881
Points : 12 881
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
J'ai qu'une fenêtre, donc c'est pas un soucis. ;-)
__________________
La rubrique Mac
Les cours & tutoriels Mac
Critiques de Livres Mac & iOS
FAQ Mac & iOS

________________________________________________________________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
Mon Livre sur AppleScript : AppleScript: L'essentiel du langage et de ses applications
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h12.


 
 
 
 
Partenaires

Hébergement Web