ボタンを押したらポップアップメニューが出るようにしたい。どうするか。
NSButton のサブクラスを作成して、NSView の
+ (NSMenu *)defaultMenu
- (NSMenu *)menuForEvent:(NSEvent *)theEvent
をオーバーライドしてもいいけど、サブクラスを作らない方法。
-----------------------------------------------------------
- (IBAction)buttonAction:(id)sender {
NSMenu *menu = [[[NSMenu alloc] initWithTitle:@"MenueTitle"] autorelease];
[menu addItemWithTitle:@"Test"
action:@selector(selectedItem:)
keyEquivalent:@""];
[NSMenu popUpContextMenu:menu
withEvent:[NSApp currentEvent]
forView:[[sender cell] controlView]];
return;
}
- (void)selectedItem:(id)sender {
NSLog(@"Selected:%@",sender);
}
-----------------------------------------------------------
0 件のコメント:
コメントを投稿