当用户单击状态栏图标在Mac桌面应用程序中的任何按钮时,有没有办法打开应用程序

时间:2014-12-24 05:21:30

标签: xcode macos

当用户点击Mac桌面应用程序中的状态栏图标上的打开应用程序按钮时,有没有办法打开我的应用程序?

 NSStatusBar *systemStatusBar = [NSStatusBar systemStatusBar];
    _statusItem = [systemStatusBar statusItemWithLength:NSVariableStatusItemLength];
    [_statusItem setHighlightMode:NO];
    [_statusItem setMenu:self.statusMenu];
    [_statusItem setTarget:self];

    NSMenu *menu = [[NSMenu alloc] init];
    [menu addItemWithTitle:@"Open App" action:@selector(OpenAPp:) keyEquivalent:@""];
    [menu addItem:[NSMenuItem separatorItem]]; // A thin grey line
    [menu addItemWithTitle:@"Quit" action:@selector(terminate:) keyEquivalent:@""];
    _statusItem.menu = menu;





-(IBAction)OpenAPp:(id)sender
{
    NSLog(@"here");
    [NSApp activateIgnoringOtherApps:YES];
}

我希望在用户点击OpenApp按钮时应用午餐,即使应用已关闭,甚至应用程序正在后台运行,谢谢

[NSApp activateIgnoringOtherApps:YES];

使用Above行我只能使应用程序窗口激活

1 个答案:

答案 0 :(得分:0)

我可以通过添加这些行来解决我的问题

[[NSApplication sharedApplication] activateIgnoringOtherApps:YES];
[_window makeKeyAndOrderFront:self];