Я установил для NSView
пользовательский NSMenuItem
, чтобы сделать свой собственный рисунок и рендеринг. Однако «keyEquivalent», присвоенный NSMenuItem
, похоже, не отвечает. Я понимаю, что рисование и обработка действий должны выполняться самостоятельно, но я не могу захватить запрос keyEquivalent независимо от того, что я делаю. Я попытался создать подклассы sendEvent NSApplication, но это не работает, поскольку мое приложение - NSStatusBarItem
(LSUIElement), а события из NSEventTrackingRunLoopMode
(когда меню выключено) не достигают sendEvent NSApplication.
Тогда я попробовал использовать:
- (BOOL)menuHasKeyEquivalent:(NSMenu *)menu forEvent:(NSEvent *)event target:(id *)target action:(SEL *)action
Это также не работает, так как никогда не вызывается, хотя я установил делегат главного меню на контроллер.
Кто-нибудь имеет представление о том, как захватывать события 'keyEquivalent' в NSMenuItems при использовании настраиваемого представления?
Спасибо!