我试图理解 Cocoa 中的一些东西,但我被困在一件事上。我正在关注Minimalistic Cocoa Programming,它NSMenuItem
负责终止应用程序。现在,我想创建另一个NSMenuItem
带有快捷方式的 ,当按下它时,它NSLog
是什么东西。但我不知道我应该把所说的选择器的实现放在哪里?我应该将整个子类化NSApplication
吗?我应该setDelegate
在某些NSObject
情况下充当控制器吗?
问问题
281 次
1 回答
2
您需要创建一个可以用作菜单项目标的类。像这样的东西:
@interface Tester : NSObject
@end
@implementation Tester
- (void)logTest:(id)sender
{
NSLog(@"Test");
}
@end
然后将其设置为目标:
id testMenuItem = [[[NSMenuItem alloc] initWithTitle:@"Log Test" action:@selector(logTest:) keyEquivalent:@"l"] autorelease];
id tester = [[[Tester alloc] init] autorelease];
[testMenuItem setTarget:tester];
于 2012-04-28T18:13:35.027 回答