Mac开发小白之路--- 定义全局快捷键(全局监听)

    xiaoxiao2021-03-25  123

    主要实现的功能是,当NSApp非active状态时候,右键app,会弹出上下文菜单(open contextual menus), 但是此时App不是活跃状态,所以在applicationDidFinishLaunching 定义全局的monitor,可以监控到app外边的键盘或者其他事件的点击,然后我们就可以关闭当前的上下文菜单

    - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { [NSEvent addGlobalMonitorForEventsMatchingMask:(NSKeyDownMask | NSLeftMouseDownMask | NSRightMouseDownMask | NSOtherMouseDownMask) handler:^(NSEvent * event) { if (event.type == NSKeyDown) { if ([event keyCode] == kVK_Escape) { [[NSNotificationCenter defaultCenter] postNotificationName:TO_CLOS_CONTEXT_MENU_WINDOW_NOTIFICATION object:nil]; } } else { [[NSNotificationCenter defaultCenter] postNotificationName:TO_CLOS_CONTEXT_MENU_WINDOW_NOTIFICATION object:nil]; } }]; }
    转载请注明原文地址: https://ju.6miu.com/read-3905.html

    最新回复(0)