2

最も外側のメニューへの参照がありますが、サブメニューにネストされているNSMenuItemへの参照を取得しようとしています。

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

file_menuは明らかにサブメニュー(NSMenu)ですが、itemarrayからアイテムを取得する方法がわかりません。NSMenuにキャストして、itemWithTitleをセレクターとして実行してみましたが運が悪かったです。

どうすれば最初のNSMenuItemを取得できますか?

4

1 に答える 1

6

このような。

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

メニュー項目にサブメニューがある場合、サブメニュープロパティでアクセスできるようになり、itemArrayプロパティを使用してそのメニュー項目にアクセスできます。

于 2011-07-28T04:09:53.810 に答える