2011-11-28 3 views
1

J'ai besoin de quelque chose comme un "tag" (iOS) pour NSWindow de cacao. J'ai un "message d'erreur" NSWindow. J'utilise la même fenêtre pour afficher de nombreux messages personnalisés. Le problème est que si je libère la fenêtre, cela se ferme, donc j'ai besoin de garder une référence à la fenêtre dans un NSDictionary, et dans l'action de fermeture, je vais libérer la fenêtre d'erreur correspondante.NSWindow comment définir et obtenir un identifiant

ErrorWindow *controllerWindow = [[ErrorWindow alloc] initWithWindowNibName:@"ErrorWindow"]; 
[controllerWindow showWindow:self]; 
[controllerWindow setMessageText: message]; 
[controllerWindow setInformationText:info]; 

//If I release the window, it closes. 
[controllerWindow release]; 

Répondre

0

Vous voudrez peut-être sous-classe NSWindow, de sorte que vous pouvez ajouter votre propriété tag:

/* MyWindow.h */ 
@interface MyWindow: NSWindow 
{ 
@protected 

    NSInteger _tag; 
} 

@property(assign, readwrite) NSInteger tag; 

@end 

/* MyWindow.m */ 

#import "MyWindow.h" 

@implementation MyWindow 

@synthesize tag = _tag; 

@end 

En InterfaceBuilder, vous serez alors en mesure de définir la classe de vos fenêtres à MyWindow, au lieu de NSWindow.

Questions connexes