Cocoa API解説(macOS/iOS)

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。

目次

addItemWithTitle:action:keyEquivalent:

メニューに、タイトル・アクション・代替キーでメニュー項目を追加します
-(id <NSMenuItem>)addItemWithTitle:(NSString *)aString:
             action:(SEL)aSelector:
             keyEquivalent:(NSString *)keyEquiv:

解説

メニューに、タイトル・アクション・代替キーでメニュー項目を追加します。
代替キーが不要ならば、keyEquivを空の文字列(@"")とします。

返り値

( id <NSMenuItem> )

メニュー

引数

( NSString * )aString

タイトル文字列

( SEL )aSelector

セレクタ

( NSString * )keyEquiv

代替キー

フレームワーク

ApplicationKit

クラス

NSMenu

Instance Methods

使用可能

10.0

参照

例文

#import "MyObject.h"

@implementation MyObject

- (IBAction)myAction:(id)sender
{
/*
Localizable.stringsのJapaneseに記入してあります。
"menu_open"="開く";
"menuItem_1"="メニュー項目1";
"menuItem_2"="メニュー項目2";
"menuItem_3"="メニュー項目3";
*/
        NSMenuItem	*menuItem = [[[NSMenuItem alloc] init] autorelease];
        NSMenu *menu = [[[NSMenu alloc] init] autorelease];
        
        [menuItem setTitle:NSLocalizedString(@"menu_open",@"")];

        [menu setTitle: NSLocalizedString(@"menu_open",@"")];
        
        [menu addItemWithTitle: NSLocalizedString(@"menuItem_1",@"")
            action: @selector(mItem1:) keyEquivalent: @"A"];
        [menu addItemWithTitle: NSLocalizedString(@"menuItem_2",@"")
            action: @selector( mItem2: ) keyEquivalent: @"B"];
        [menu addItem: [NSMenuItem separatorItem]];
        [menu addItemWithTitle: NSLocalizedString(@"menuItem_3",@"")
            action: @selector( mItem3: ) keyEquivalent: @"E"];

        [menuItem setSubmenu: menu];
        
        [menu setAutoenablesItems:NO];
        [menuItem setEnabled:YES];
        
        [[NSApp mainMenu] insertItem: menuItem atIndex: 2];

        [menuItem setTarget:self];
}
-(void)addItem:(id)sender
{
NSLog(@"item1");
}
-(void)mItem1:(id)sender
{
NSLog(@"item1");
}
-(void)mItem2:(id)sender
{
NSLog(@"item2");
}
-(void)mItem3:(id)sender
{
NSLog(@"item3");
}
@end