menuForEvent:
イベントに応じたポップアップメニューを返します
-(NSMenu *)menuForEvent:(NSEvent *)theEvent:
解説
イベントに応じたポップアップメニューを返します。
サブクラスでオーバーライドします。
返り値
( NSMenu * )
メニュー
引数
( NSEvent * )theEvent
イベント
フレームワーク
ApplicationKit
クラス
NSView
Instance Methods
使用可能
10.0
参照
+ defaultMenu
- menu (NSResponder)
例文
#import "MyView.h" @implementation MyView - (void)beginPageInRect:(NSRect)aRect atPlacement:(NSPoint)location { NSLog(@"beginPageInRect"); [super beginPageInRect:aRect atPlacement:location]; } -(void)mouseDown:(NSEvent *)theEvent { NSMenu *menu = [self menuForEvent:theEvent]; NSLog(@"mousedown"); NSLog([menu description]); } -(NSMenu *)menuForEvent:(NSEvent *)theEvent { NSMenuItem *menuItem = [[[NSMenuItem alloc] init] autorelease]; NSMenu *menu = [[NSMenu allocWithZone:[NSMenu menuZone]] initWithTitle:NSLocalizedString(@"menu_open",@"")]; [menuItem 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]; return menu; } @end