Я хочу перехватывать горячие клавиши, которые начинаются с Control+Shift и заканчиваются символом (обязательно).
У меня есть следующий код:
[NSEvent addGlobalMonitorForEventsMatchingMask:NSFlagsChangedMask handler: ^(NSEvent *event) {
NSUInteger flags = [event modifierFlags] & NSDeviceIndependentModifierFlagsMask;
if(flags == NSControlKeyMask + NSShiftKeyMask){
NSLog(@"pressed!");
}
}];
Что мне нужно добавить в свой код, чтобы проверить, нажал ли пользователь ControlShift+символ, и какой символ нажал пользователь?
Код NSLog(@"pressed!");
будет выполнен только в том случае, если то, что я сказал выше, верно.
Это мой псевдокод для того, что я ищу:
[NSEvent addGlobalMonitorForEventsMatchingMask:NSFlagsChangedMask handler: ^(NSEvent *event) {
NSUInteger flags = [event modifierFlags] & NSDeviceIndependentModifierFlagsMask;
if((flags == NSControlKeyMask + NSShiftKeyMask) && [event containsCharacter]){
NSLog(@"%@", [event character];
}
}];
Итак, если пользователь нажмет Control+Shift+1, я сделаю одно, если Control+Shift+ 2 другое дело и так далее...
if((flags == NSControlKeyMask + NSShiftKeyMask) && [event containsCharacter]){ NSLog(@"%@", [event character];}
понятно? - person Pedro Vieira   schedule 12.09.2012