Удаление меню

Для удаления пункта меню из меню Вы отправляете removeItem: или removeItemAtIndex: к NSMenu объект, управляющий пунктом меню.

Для удаления всего меню из строки меню Вы используете тот же метод. Меню в строке меню являются самостоятельно элементами другого меню: главное меню или главное меню. Для получения главного меню отправить mainMenu к NSApp, глобальный экземпляр приложения. Тогда отправьте removeItem: к главному меню; или найдите, что индекс меню удален и отправляет removeItemAtIndex: к главному меню. Перечисление 1 иллюстрирует последнюю процедуру.

Перечисление 1  , Удаляющее меню из строки меню

- (IBAction)removeMenu:(id)sender {
    NSMenu* rootMenu = [NSApp mainMenu];
    // sender is an NSMenuItem
    [rootMenu removeItemAtIndex:[rootMenu indexOfItemWithSubmenu:[sender menu]]];
}