У меня есть интерфейс-конструктор NSMenu-Object. Я добавил свой пользовательский класс «StatusBarMenu».Делегат NSMenu не запускает menuWillOpen
StatusBarMenu.h
файл выглядит следующим образом:
@interface StatusBarMenu : NSMenu <NSMenuDelegate>
Файл StatusBarMenu.c
выглядит следующим образом:
- (void)menuWillOpen:(NSMenu *)menu {
`NSLog(@"open");`
}
Меню назначается в AppDelegate.c
следующим образом:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
self.statusBar = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
self.statusBar.highlightMode = YES;
[self.statusBar setMenu:self.statusMenu];
}
И AppDelegate.h
:
#import <Cocoa/Cocoa.h>
#import "StatusBarMenu.h"
@interface AppDelegate : NSObject <NSApplicationDelegate>
@property (strong, nonatomic) NSStatusItem *statusBar;
@property (weak) IBOutlet StatusBarMenu *statusMenu;
Меню открывается, но menuWillOpen не вызывается. Я что-то пропустил?
Я ценю любую помощь! Спасибо.
спасибо за быстрый и полезный ответ. Это сделал трюк! –