Objective c Objective C/Cocoa中的动态菜单

Objective c Objective C/Cocoa中的动态菜单,objective-c,xcode,macos,cocoa,menu,Objective C,Xcode,Macos,Cocoa,Menu,如何在运行时在Objective C中动态添加(运行时)菜单项?例如,为最近的文件添加5个菜单项 A) “添加”菜单项的外观如何 B) 如何设置检查以查看单击了哪些菜单项并获取索引或标识 请不要建议像添加插槽和在运行时隐藏这样的非动态解决方案。我试图弄清楚如何在运行时动态添加菜单项,这在其他一些平台上是很容易做到的,我希望能让这些代码在Mac上很好地工作 添加:添加菜单项似乎很简单 NSMenuItem *item = [myMenu insertItemWithTitle:[NSString

如何在运行时在Objective C中动态添加(运行时)菜单项?例如,为最近的文件添加5个菜单项

A) “添加”菜单项的外观如何

B) 如何设置检查以查看单击了哪些菜单项并获取索引或标识

请不要建议像添加插槽和在运行时隐藏这样的非动态解决方案。我试图弄清楚如何在运行时动态添加菜单项,这在其他一些平台上是很容易做到的,我希望能让这些代码在Mac上很好地工作

添加:添加菜单项似乎很简单

NSMenuItem *item = [myMenu insertItemWithTitle:[NSString stringWithFormat:@"%blah"]];

但是如何获取动态添加的菜单项的事件呢?

当添加项时,为每个项设置一个标记并传递操作

检查一下-

 item = [myMenu addItemWithTitle:@"" action:@selector(HitMe:) keyEquivalent: @""];
[item setTag:10];
代表-

-(void)HitMe:(id) sender{
    NSMenuItem * item = (NSMenuItem*)sender;
    int val1 = [item tag];
    printf("Value1==>%d", val1);
}

谢谢你,我不知道标签的属性。