Bonjour à tous,
Je suis en train de développer un petit programme et j'ai un soucis.
J'ai créer un NSStatusBar et dedans un menu qui me permet de choisir différente chose. L'un des choix est "Préférences". Quand je clique dessus, cela exécute le code suivant :
Ce code ouvre donc ma fenêtre "Préférences". Le problème est que si je refais la manipulation, la fenêtre s'ouvre une deuxième fois et je me retrouve donc avec deux fenêtres identiques.
Quelle condition peut-on ajouter ici pour éviter le problème de doublage des fenêtres ?
Par ailleurs, voici le contenu de mes fichiers .h et .m
gestionFenetres.h
gestionFenetres.m
Merci par avance.
Je suis en train de développer un petit programme et j'ai un soucis.
J'ai créer un NSStatusBar et dedans un menu qui me permet de choisir différente chose. L'un des choix est "Préférences". Quand je clique dessus, cela exécute le code suivant :
Bloc de code:
- ([COLOR="Magenta"]IBAction[/COLOR])ouvrirPreference:([COLOR="Magenta"]id[/COLOR])sender {
[[COLOR="DarkOrchid"]NSBundle[/COLOR] [COLOR="Navy"]loadNibNamed[/COLOR]:[COLOR="Red"]@"preferences"[/COLOR] [COLOR="navy"]owner[/COLOR]:[COLOR="DarkOrchid"]NSApp[/COLOR]]; [COLOR="SeaGreen"]// Ouvre preferences.xib[/COLOR]
}
Ce code ouvre donc ma fenêtre "Préférences". Le problème est que si je refais la manipulation, la fenêtre s'ouvre une deuxième fois et je me retrouve donc avec deux fenêtres identiques.
Quelle condition peut-on ajouter ici pour éviter le problème de doublage des fenêtres ?
Par ailleurs, voici le contenu de mes fichiers .h et .m
gestionFenetres.h
Bloc de code:
[COLOR="Sienna"]#import [/COLOR][COLOR="Red"]<Foundation/Foundation.h>[/COLOR]
[COLOR="Magenta"]@interface[/COLOR] gestionFenetres : [COLOR="DarkOrchid"]NSObject[/COLOR] {
[COLOR="DarkOrchid"]NSWindow[/COLOR] *preferences;
}
[COLOR="Magenta"]@property[/COLOR] ([COLOR="Magenta"]assign[/COLOR]) [COLOR="Magenta"]IBOutlet[/COLOR] [COLOR="DarkOrchid"]NSWindow[/COLOR] *preferences;
[COLOR="Magenta"]@end[/COLOR]
gestionFenetres.m
Bloc de code:
[COLOR="Sienna"]#import[/COLOR] [COLOR="Red"]"gestionFenetres.h"[/COLOR]
[COLOR="Magenta"]@implementation[/COLOR] gestionFenetres
[COLOR="Magenta"]@synthesize[/COLOR] preferences = [COLOR="Teal"]preferences[/COLOR];
- ([COLOR="Magenta"]IBAction[/COLOR])ouvrirPreference:([COLOR="Magenta"]id[/COLOR])sender {
[[COLOR="DarkOrchid"]NSBundle[/COLOR] [COLOR="navy"]loadNibNamed[/COLOR]:[COLOR="Red"]@"preferences"[/COLOR] [COLOR="navy"]owner[/COLOR]:[COLOR="DarkOrchid"]NSApp[/COLOR]]; [COLOR="SeaGreen"]// Ouvre preferences.xib[/COLOR]
}
- ([COLOR="Magenta"]IBAction[/COLOR])btAnnuler:([COLOR="Magenta"]id[/COLOR])sender {
[[COLOR="Teal"]preferences[/COLOR] [COLOR="navy"]performClose[/COLOR]:[COLOR="Magenta"]self[/COLOR]];
}
[COLOR="Magenta"]@end[/COLOR]
Merci par avance.