关于可可粉:如何从子菜单中获取NSMenuItem?

How can I get a NSMenuItem from a submenu?

我有一个对最外层菜单的引用,但是我试图得到对嵌套在子菜单中的NSMenuItem的引用:

1
NSMenuItem* file_menu = [menu itemWithTitle:@"File];

file_menu显然是一个子菜单(NSMenu),但是我不确定如何从它的itemarray中获取一个项目。我尝试将其强制转换为NSMenu并执行itemWithTitle作为没有运气的选择器。

如何从中获得第一个NSMenuItem?


赞。

1
2
3
4
5
NSMenuItem* file_menu = [menu itemWithTitle:@"File"];
if (file_menu.hasSubmenu) {
    NSArray *menu_items = file_menu.submenu.itemArray;
    NSMenuItem *first_item = [menu_items objectAtIndex:0];
}

如果菜单项具有子菜单,则submenu属性将允许您访问它,然后可以使用itemArray属性访问其菜单项。