0
当用户点击状态栏中的NSStatusitem时,有没有办法让NSPopover显示?来自NSStatusitem的NSTextField
在我的头到目前为止,我有这样的:
IBOutlet NSStatusItem *statusitem;
这:
@property (assign) IBOutlet NSPopover *pop;
下的方法,我有这个:
[[NSImage imageNamed:@"mic.png"]setSize:NSMakeSize(20,20)];
statusitem = [[NSStatusBar systemStatusBar]statusItemWithLength:NSVariableStatusItemLength];
[statusitem setHighlightMode:YES];
[statusitem setImage:[NSImage imageNamed:@"mic.png"]];
[statusitem setMenu:menu];
[statusitem setAction:@selector(pop:)]
和
- (void)pop:(id)sender{
[[self pop]showRelativeToRect:[sender bounds] ofView:sender preferredEdge:NSMaxXEdge];
}
有没有办法让这个工作?
谢谢我得到它的工作,唯一的问题是它不会消失,当我点击或再次statusitem有无论如何解决这个问题? – haseo98
是的,在IB中,popover的Behavior属性设置为transient。 – rdelmar
谢谢,我注意到的另一个错误是我无法让NSTextfield专注于 – haseo98