Единственный способ, которым я знаю в какао, - использовать глобальный монитор событий. Если вы вызываете метод ниже, приложение будет прослушивать control-alt- /, а затем выдает предупреждение. Возможная проблема с этим подходом состоит в том, что блок будет запускаться (но не отображать предупреждение) каждый раз, когда вы нажимаете клавишу, если вы делаете что-то очень интенсивно использующее процессор, это может немного замедлить его. Я думаю, что есть способ сделать это в Carbon, у которого нет этой проблемы, но я не знаю достаточно о Carbon, чтобы писать об этом.
+(void)listenForKey {
[NSEvent addGlobalMonitorForEventsMatchingMask:NSKeyDownMask handler:^(NSEvent *event)
{
NSUInteger key = 44; // 44 is forward slash
NSUInteger modifier = NSControlKeyMask | NSAlternateKeyMask;
if ([event keyCode] == key && [NSEvent modifierFlags] == modifier)
NSRunCriticalAlertPanel(nil,@"Control-alt / was detected",nil,nil,nil);
}];
}