我需要像可可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];

最佳答案

您可能想要子类化NSWindow,因此可以添加您的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


然后,您可以在InterfaceBuilder中将Windows的类设置为MyWindow,而不是NSWindow。

关于objective-c - NSWindow如何设置和获取标识符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8295849/

10-13 07:20