statusItem = [[Nsstatusbar systemStatusbar] statusItemWithLength:NSVariableStatusItemLength]; [statusItem setMenu:statusMenu]; [statusItem setimage:statusImage]; [statusItem setAlternateImage:statusHighlightedImage]; [statusItem setHighlightmode:YES]; [statusItem setTarget:self];
我有一个NSMenu,当点击图标时会打开.单击时,其中一个选项应该是从状态栏图标打开NSPopover.为此,我有这个代码,它通过Interface Builder连接到菜单项:
- (IBAction)prefs:(ID)sender { NSRectEdge prefEdge = NSMaxYEdge; [[self pop] showrelativeToRect:[[statusItem vIEw] bounds] ofVIEw:[statusItem vIEw] preferredEdge:prefEdge];}
但是,当我单击应该打开Popover的菜单项时,没有任何反应.有什么特别的原因可能出现这种情况吗?据我所知,应该可以做到.
提前致谢.我尽可能地查看了Stack Overflow,但是如果有一个真正重复的问题,请将我链接到它.
仅供参考:statusItem变量是NsstatusItem.
解决方法 您需要使用[statusItem setVIEw:]为[statusItem视图]自行设置视图以返回非零值.如果您不介意使用私有API,则可以尝试调用[statusItem _button],但如果您计划提交到App Store,则不允许这样做.
总结以上是内存溢出为你收集整理的objective-c – 在NSStatusItem上实现NSPopover全部内容,希望文章能够帮你解决objective-c – 在NSStatusItem上实现NSPopover所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)