У меня есть простое приложение строки состояния ядра какао с Xcode 4.6.2. Вот в моем AppController.h
у меня есть
@interface AppController : NSObject
@property NSStatusItem *statusItem;
@property IBOutlet NSMenu *statusMenu;
In my AppController.m
:
@synthesize statusItem = statusItem;
@synthesize statusMenu = statusMenu;
-(void)awakeFromNib{
statusItem = [[NSStatusBar systemStatusBar]statusItemWithLength:NSVariableStatusItemLength];
statusItem.menu = statusMenu;
}
то в моем AppDelegate.m
есть функция:
#import "AppController.h"
-(IBAction)someAction:(id)sender{
//code to do something
AppController *x = [[AppController alloc]init];
[x.statusMenu cancelTracking];
}
Я хочу закрыть меню с помощью кнопки, которая выполняет действие внутри пользовательского представления NSMenuItem (из Connection Inspector-> Outlets-> view ctrl + перетаскивание на кнопку). Я не могу выбрать 2 разных отправленных действия для NSButton, поэтому мне нужно закрыть меню, объявленное в классе AppController, из некоторого действия IBAction, которое находится в классе AppDelegate. Как это сделать? Код, который я разместил, не работает. заранее спасибо