在菜单上单击左右时,我使用此代码具有两种不同的行为。
单击左键,然后单击右键 + cmd。
如何以最简单的方式在不按 cmd + click 的情况下单击鼠标右键?
-(void)awakeFromNib {
NSImage *image = [NSImage imageNamed:@"menubar"];
NSImage *alternateImage = [NSImage imageNamed:@"menubar-white"];
statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
[statusItem setHighlightMode:YES];
[statusItem setImage:image];
[statusItem setAlternateImage:alternateImage];
[statusItem setAction:@selector(show)];
}
- (void)show {
NSLog(@"call show");
NSEvent *event = [NSApp currentEvent];
//Respond to the mouse click
if ([event modifierFlags] & NSCommandKeyMask) //Command
{
NSLog(@"RIGHT");
[statusItem setMenu:statusMenu];
}
else {
NSLog(@"LEFT");
//open window
}
}
谢谢你的帮助!