2012-06-12 27 views
3

我试图在我的应用程序中创建一个NSMenu。我用一些固定项目成功创建了菜单,现在我必须以编程方式添加一些项目。我也成功了,但是它在其他人的底部添加了这个项目。有一种方法可以在固定项目之间使用以编程方式创建的项目吗?这里是我的代码:可可NSMenu在位置添加NSMenuItem

.H:

@interface AppController : NSObject { 

    IBOutlet NSMenu *statusMenu; 
    NSStatusItem *statusItem; 
} 

.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]; 

回答

4

您要使用的insertItem:atIndex:家庭的方法,而不是addItem:的。

+0

谢谢,这就是我正在寻找 – phcaze