1
このメソッドを使用して、アプリケーションがアクティブの場合のみNSStatusItemメニューを表示します。アプリケーションがアクティブな場合のみNSStatusItemメニューを表示
-(void)menuWillOpen:(NSMenu*)menu{
if(![NSApp isActive]){
[menu cancelTracking];
}
[[NSApplication sharedApplication] activateIgnoringOtherApps:YES];
[window makeKeyAndOrderFront:self];
}
それは完璧に動作しますが、cancelTrackingはNSStatusItemの青いハイライトをブロックするように思えます。だからステータスメニュー項目をクリックすると、サブメニューが表示されず、メインウィンドウが表示されますが、アイコンは強調表示されません。 これを実現する方法はありますか?