OS X检测全局修改键,键入和键入

时间:2015-03-22 05:09:12

标签: objective-c macos operating-system

我希望在{shift |时}有一个回调cmd | ctrl | alt |按下并释放;也就是说,一个用于按键的回调和另一个用于按键的回调。我需要回调的原因是因为我还想要按下并释放它们的确切时间。不幸的是,似乎没有一种简单的方法可以做到这一点,因为修饰键的处理方式与普通键的处理方式完全不同。我有

[NSEvent addGlobalMonitorForEventsMatchingMask:NSKeyDownMask
                                       handler:^(NSEvent *event){ [self handleKeyDown:event]; }];
[NSEvent addGlobalMonitorForEventsMatchingMask:NSKeyUpMask
                                       handler:^(NSEvent *event){ [self handleKeyUp:event]; }];

立即设置处理普通键。如何为修改键执行此操作?另外,我想在全球范围内这样做,包括在我的应用之外。

1 个答案:

答案 0 :(得分:1)

我认为你要找的是事件NSFlagsChanged和相应的NSFlagsChangedMask