Как программно открыть приложение в строке состояния?

Я хочу открыть приложение в строке состояния, когда запущен глобальный ярлык.

Вот как я настраиваю statusItem:

NSMenu *appMenu=[NSMenu new];
NSMenuItem *firstItem=[NSMenuItem new];
[firstItem setView:_clickView];
[appMenu addItem:firstItem];
self.statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:100];
[self.statusItem setTitle:@"App"];
[self.statusItem setMenu:appMenu];

После этого я использую DDHotKey для ответа на ярлыки. Я могу определить, был ли запущен ярлык, но я не знаю, как открыть меню, так как это был щелчок в строке состояния.

Я также пытался играть с NSMenu popUpContextMenu. Но мне кажется, это не правильный путь. Меню отображается в новом окне, и это не то поведение, которое я ищу

1 ответ

Решение

NSStatusItem popUpStatusItemMenu: сделал трюк. Я просто передаю его собственное меню в качестве аргумента, и оно работает.

Другие вопросы по тегам