我有一个菜单栏应用程序,它打开一个弹出窗口。该弹出框包含 NSTextField 和几个按钮。问题是 NSTextField 是不可选择的,不可能在其中输入任何内容。但是,可以用鼠标右键单击它并粘贴一些东西。嗯,这绝对是奇怪的行为。顺便说一句,按钮在那个弹出窗口中没有任何问题。
这是我使用的代码:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
[NSApp activateIgnoringOtherApps:YES];
statusItem = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength] retain];
[statusItem setAction:@selector(showPopOver:)];
[statusItem setImage:[[NSImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"icon" ofType:@"png"]]];
[statusItem setHighlightMode:YES];
}
和:
- (IBAction)showPopOver:(id)sender {
popover = [[NSPopover alloc] init];
[popover setContentViewController:popOverController];
popover.animates = YES;
popover.delegate = self;
[popover showRelativeToRect:[sender bounds]
ofView:sender
preferredEdge:NSMaxYEdge];
}
}
任何想法究竟是什么问题以及如何解决它?