我需要在NSMenu实例中的菜单项被删除时得到通知。特别是因为我在我的班级中持有NSMenuItem * selectedItem实例。如果从我的NSMenu实例中删除了这个selectedItem,我想将selectedItem设置为nil;
当您从菜单中删除单个项目时,NSMenu会发出一个名为“NSMenuDidRemoveItemNotification”的通知。但是当你调用[myNSMenu removeAllItems]时,它不会被调用。
有什么想法吗? ,我需要继承NSMenu吗? 谢谢。
答案 0 :(得分:0)
是的,你是对的,没有关于removeAll的通知。
你正确地说你需要继承
或者,需要一些技巧(可能是hacky工作)
即使您可以使用removeEachItem
方法创建类别。
如果菜单中只剩下一个项目,您可以跟踪上次调用的NSMenuDidRemoveItemNotification
,则表示您完成了自己的要求。