如何在Xcode中捕获命令或键盘快捷键?

时间:2014-06-04 15:41:49

标签: xcode macos keyboard-shortcuts

我正在Xcode 5.1中为Mac OSX开发应用程序,我希望在用户按下cmd+E(例如)的组合时进行操作。

这是我到目前为止的工作代码:

-(void)keyDown:(NSEvent *)theEvent{

    //If the key is X just closes the window
    if ([theEvent.characters.uppercaseString isEqualToString:@"X"]) {
        [self close];
    }
}

我想要实现的是按下这样的组合打开一个应用程序,但我还没有找到一种方法来捕获cmd密钥,只有E。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

如果您想全局使用,可以尝试 DDHotKey

https://github.com/davedelong/DDHotKey

如果要在本地激活它们,可以使用Carbon Framework将其导入项目,

您可以在Events.h上获取整个keyCode列表(在碳框架内)

例如,如果您想在本地(在您的应用中)通过按左键按钮触发特定操作,您可以这样做

-(void)keyDown:(NSEvent *)theEvent{

    if (theEvent.keyCode == kVK_LeftArrow) {  NSLog("left key pressed"); }

}