objective-c - 如何在 NSOutlineView 中创建右键菜单?

标签 objective-c cocoa nstableview nsoutlineview

我是这项技术的新手,我想在父节点子节点的右键单击上显示不同的上下文菜单 ..

最佳答案

子类NSOutlineView并实现- (NSMenu *)menuForEvent:(NSEvent *)theEvent

-(NSMenu*)menuForEvent:(NSEvent*)evt 
{
    NSLog(@"menuForEvent %@ %@",self, [self delegate]);
    NSPoint pt = [self convertPoint:[evt locationInWindow] fromView:nil];
    int row=[self rowAtPoint:pt];
    // create menu ...
    return menu;
} 

在 Mac OS 10.5 及更高版本上,在 nib 中创建 NSMenu 并设置委托(delegate)并实现:

-(void)menuNeedsUpdate:(NSMenu *)menu

关于objective-c - 如何在 NSOutlineView 中创建右键菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11581316/

相关文章:

objective-c - 如何重新排序 NSTableView 中的行?

objective-c - 使用来自 NSURL 的 UIImage 存储图像

iphone - Singleton:在哪里创建实例?

objective-c - 为什么我的 NSPanel 没有正常的灰色背景?

cocoa - 对带有核心数据存储的 NSTableView 的拖放支持

macos - 核心数据 nstableview 搜索栏

objective-c - 当键盘出现在 iOS 中时,将 UIView 上移

iphone - 将 UIView 置于所有其他 View 之上

objective-c - 使用 NSDateComponents : changing year 获取一周的第一天

cocoa - 如何在基于文档的应用程序中制作safari的tabView?