objective-c - NSWindow 如何设置和获取标识符

标签 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];

最佳答案

您可能想要子类化 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。

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

相关文章:

ios - 如何在 iOS 8 中使用 inputAccessoryViewController

ios - 如何在旋转时处理 UIView 圆角(使用 CAShapeLayer)

objective-c - 获取AppKit类的私有(private)方法的名称

objective-c - 仅在第一次运行 iOS 时执行功能

ios - 在 View 上自定义多个手势

ios - 新项目中的CoreData

objective-c - 在后台执行 NSTask

iphone - 如何解析 Objective-C 中 iframe 标签的 src 属性?

macos - NSXMLStoreType 或 NSSqliteStoreType

NSMenuItem 中的 Swift 2.2 选择器