2014-10-16 3 views
0

Я хочу динамически подменю. Теперь я пробовал этот путь:Элемент подменю не доступен.

@interface AppController() 
@property(strong) Accounts * accView; 
@property (weak) IBOutlet NSMenuItem *serverMenu; 
@end 

@implementation AppController 

-(void)awakeFromNib { 
    _accView = [[Accounts alloc] initWithNibName:@"Accounts" bundle:nil]; 
    [self.viewk addSubview:[_accView view]]; 
    [[_accView view] setFrame:self.viewk.bounds]; 

    NSMenuItem * testItem = [[NSMenuItem alloc] initWithTitle:@"Test" action:@selector(test:) keyEquivalent:@""]; 

    [[_serverMenu submenu] addItem:testItem]; 

} 

- (void)test:(id)test { 

} 

Затем он добавляется, но я не могу нажать на него. Это как это:

enter image description here

Как включить?

ответ

1

Кроме того, необходимо назначить цель вашего NSMenuItem, как

[testItem setTarget:self]; 
+0

Спасибо вам ооочень много. Я видел в документах что-то вроде этого validateMenuItem: нужно ли это реализовать? – user1007522

+0

'-validateMenuItem:' является необязательным, вам это нужно только в том случае, если ваш элемент меню должен быть включен/отключен динамически на основе некоторого состояния. –