NSWindow如何设置和获取标识符

时间:2011-11-28 12:31:35

标签: objective-c cocoa

我需要像cocoa NSWindow这样的“标签”(iOS)。我有一个“错误消息”NSWindow。我使用相同的窗口来显示许多自定义消息。问题是,如果我释放窗口,这会关闭,所以我需要在NSDictionary中保持对窗口的引用,并且在关闭操作中,我将释放相应的错误窗口。

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

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

1 个答案:

答案 0 :(得分:0)

您可能想要子类化NSWindow,因此您可以添加标记属性:

/* 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

在InterfaceBuilder中,您可以将窗口的类设置为MyWindow,而不是NSWindow。