我有一个NSMenu(假设主菜单),其中有许多NSMenu,而不同级别的NSMenuItem

我希望能够获得指定树路径的NSMenuItem实例(具有相应的NSMenus / NSMenuItems的标题)。

范例:


  菜单:
  
  
  文件
  
  新
  打开
  
  文献
  项目
  
  救
  另存为...
  
  
  
  路径:/ File / Open / Document


您将如何以最有效,最可可的方式进行操作?

最佳答案

我认为最好的方法是通过指定NSMenuItem的标题或更好的自定义标签来获取。

#define kMenuFileNew 1
#define kMenuFileOpen 2

NSMenu *menu = [[NSMenu alloc] initWithTitle:@"File"];
NSMenuItem *item1 = [[NSMenuItem alloc] initWith..];
item1.tag = kMenuFileOpen;
[menu addItem:item1];


NSMenuItem* item2 = [menu itemWithTag:kMenuFileOpen];

10-08 12:13