cocoa NSMenu将NSMenuItem添加到位

phc*_*aze 4 cocoa nsmenu nsmenuitem

我正在尝试在我的应用程序中创建一个NSMenu.我成功地创建了一些固定项目的菜单,现在我必须以编程方式添加一些项目.我也成功了,但它将项目添加到其他项目的底部.有一种方法可以将这个以编程方式创建的项目放在固定项目之间吗?这是我的代码:

.H:

@interface AppController : NSObject {

    IBOutlet NSMenu *statusMenu;
    NSStatusItem *statusItem;
}
Run Code Online (Sandbox Code Playgroud)

.M

  [statusMenu setAutoenablesItems:NO];

    statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
    [statusItem setMenu:statusMenu];

    NSImage *statusImage = [[NSImage alloc] initWithContentsOfFile:@"Icon.icns"];
    [statusItem setImage:statusImage];
    [statusItem setTitle:@"Multibox"];
    [statusItem setHighlightMode:YES];

    NSMenuItem *item = [[NSMenuItem alloc] initWithTitle:@"Carlo | 0000000000" 
                                                  action:@selector(fooClicked:) keyEquivalent:@""]; 
    [item setTarget:self];
    [statusMenu addItem:item];
Run Code Online (Sandbox Code Playgroud)

Chu*_*uck 6

您想要使用insertItem:atIndex:方法系列而不是方法系列addItem:.