首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于修改键按下的可可全局监视

问用于修改键按下的可可全局监视
EN

Stack Overflow用户
提问于 2013-08-29 11:47:30
回答 1查看 697关注 0票数 1

使用addGlobalMonitorForEventsMatchingMask,我可以检查按键是否被按下。当一个事件被触发时,我可以检查修饰符标志,以查看是否有任何修饰符被联合使用。

但我需要知道是否按下了一个修饰键而没有按下另一个键。

我该怎么做呢?

EN

回答 1

Stack Overflow用户

发布于 2013-11-08 10:12:34

您正在查找kCGEventFlagsChanged类型的事件

代码语言:javascript
复制
CGEventMask eventMask = (1 << kCGEventFlagsChanged);
CFMachPortRef eventTap = CGEventTapCreate(kCGHIDEventTap, kCGHeadInsertEventTap, kCGEventTapOptionDefault, eventMask, cgEventCallback, NULL);

...


CGEventRef cgEventCallback(CGEventTapProxy proxy, CGEventType type, CGEventRef cgEvent, void *refcon)
{
    NSEvent *event = [NSEvent eventWithCGEvent:cgEvent];
    if (event.type == kCGEventFlagsChanged) {
        NSLog(@"modifier key!");
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18501955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档