Включение пункта меню «Preferences» меню приложения на Mac OS X
Q: Как я включаю пункт меню «Preferences» меню приложения на Mac OS X?
A: Как я включаю пункт меню «Preferences» меню приложения на Mac OS X?
Для пункта меню «Preferences», который будет включен в приложении Какао, необходимо установить механизм целевого действия или коммуникацию между NSMenuItem и Ваш объект контроллера.
Чтобы включить этому пункту меню, двум условиям нужно удовлетворить:
Ваш объект контроллера должен объявить и реализовать
IBActionили метод действия.NSMenuItemдолжен быть «подключен» к методу действия Вашего объекта контроллера. Можно сделать это в Интерфейсном Разработчике или программно.
Если Вы не удовлетворите обоим условиям, то элемент Меню свойства останется отключенным.
Определите метод действия
Действие является сообщением Ваш NSMenuItem отправляет к цели или, с точки зрения цели, метод, который это реализует для ответа на действие. Необходимо объявить этот метод в.h заголовочном файле и реализовать его в.m исходном файле.
Метод действия перечисления 1 В качестве примера
-(IBAction)openPreferences:(id)sender { } |
Соединение действия Target набора
Используя интерфейсного разработчика
NSMenuItem к Вашему IBAction метод: управление перетаскивает от пункта меню до Вашего объекта.
Используя код
Несмотря на то, что использование Интерфейсного Разработчика является прямым путем, можно сделать ту же вещь с помощью кода.
Перечисление 2 , Ставящее цель и действие с кодом.
NSMenu *menu = [[[[NSApplication sharedApplication] mainMenu] itemAtIndex:0] submenu];
NSString *prefsTitle = [NSString stringWithFormat:@"Preferences%C", (unichar)0x2026];
NSMenuItem *prefsMenuItem = [menu itemWithTitle:prefsTitle];
if (prefsMenuItem)
{
[prefsMenuItem setTarget:self];
[prefsMenuItem setAction:@selector(openPreferences:)];
} |
Связанная документация
Для той же проблемы с приложениями Углерода см.: Технические Вопросы и ответы 1079.
Введение в Меню приложения и Раскрывающиеся Списки, в частности раздел «Enabling Menu Items».
История версии документа
| Дата | Примечания |
|---|---|
| 21.01.2008 | Новый документ, описывающий эти две вещи, которые необходимо реализовать для включения пункта меню «Preferences» на Mac OS X. |