我想在应用程序的主菜单中添加一个菜单项,这将很少使用.我希望默认情况下隐藏它并仅在用户按住Option键时显示它.我该怎么做呢?
看来我应该处理flagsChanged:
,但这是NSResponder
方法而NSMenu
不是继承NSResponder
?我在主窗口控制器中尝试了它,当我点击菜单之前按下Option键时它可以正常工作.以下用例不起作用:单击菜单项(没有项目),按选项键 - 我的项目应该出现,释放选项键 - 项目应该消失.
我也试着NSEvent的addLocalMonitorForEventsMatchingMask:handler:
和addGlobalMonitorForEventsMatchingMask:handler:
用于NSFlagsChangedMask
但是当同时打开主菜单无论本地或全局处理程序不会触发选项键按下.
我怎样才能做到这一点?