[英]NSTextField isn't active on NSPopover attached to NSStatusItem
我有一个NSStatusItem创建如下:
statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
[statusItem setTitle:@"DS"];
[statusItem setHighlightMode:YES];
[statusItem setAction:@selector(StatusClicked:)];
[statusItem setTarget:self];
我也有一个带有customview的弹出窗口。 在视图上,我有文本字段: http : //d.pr/i/CWbr
我的弹出窗口显示如下:
- (void)StatusClicked:(id)sender {
[self.popover showRelativeToRect:[sender bounds] ofView:sender preferredEdge:NSMaxYEdge];
}
从NSStatusBarButton
sender
我了解到sender
是NSStatusBarButton
类的实例。
问题是,当弹出弹出窗口时,我无法在文本字段中键入内容,它会显示不活动状态: http ://d.pr/i/q18U
该按钮虽然起作用。
我认为问题出在我传递给ofView:
的视图中。 我试图将其更改为这样的窗口控件:
[self.popover showRelativeToRect:[sender bounds] ofView:self.postText preferredEdge:NSMaxYEdge];
文本字段变为活动状态( http://d.pr/i/DmTz ),但我不知道为什么这会有所帮助。
从菜单弹出时,为什么我的弹出文本框变得不活动? 为什么按钮起作用? 如何激活文本框?
PS我的应用是Application is agent (UIElement)
写下问题后,我认为这可能与关键窗口有关。 因此,我搜索了此连接并发现了以下问题: 即使设置了可编辑行为,也无法在NSPopover上编辑NSTextField
这完全回答了我的问题。 它似乎是一个错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.