Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 当应用程序未激活时,如何观察键盘输入事件_Objective C_Cocoa_Macos_Keyboard Events - Fatal编程技术网

Objective c 当应用程序未激活时,如何观察键盘输入事件

Objective c 当应用程序未激活时,如何观察键盘输入事件,objective-c,cocoa,macos,keyboard-events,Objective C,Cocoa,Macos,Keyboard Events,应用程序未激活时,如何观察键盘输入事件。您需要使用创建CGEventTap。用户必须能够访问已打开的辅助设备,这是有意义的,因为这是您这样做的唯一合法原因 如果您想设置一个热键,其中有一个API和一个名为SGHotKeysLib的Cocoa包装器。请注意,当前64位Mac OS X仍然支持Carbon Event Manager热键API。re Ghommeny:好主意。但我只想用户通过热键更改歌曲,而不激活我的音乐应用程序。Carbon?如文档中所述,leapordCarbon中是否有可追溯到

应用程序未激活时,如何观察键盘输入事件。

您需要使用创建CGEventTap。用户必须能够访问已打开的辅助设备,这是有意义的,因为这是您这样做的唯一合法原因


如果您想设置一个热键,其中有一个API和一个名为SGHotKeysLib的Cocoa包装器。请注意,当前64位Mac OS X仍然支持Carbon Event Manager热键API。

re Ghommeny:好主意。但我只想用户通过热键更改歌曲,而不激活我的音乐应用程序。
Carbon
?如文档中所述,leapordCarbon中是否有可追溯到10.0的新api集。其中大部分已弃用和/或现在不可用,但有些部分尚未使用,Carbon Event Manager热键API是仍然可用且受支持的部分之一。似乎这是处理此类事件的唯一方法。我知道回答这个问题为时已晚,但现在我选择使用
NSEvent addGlobalMonitorForEventsMatchingMask:NSKeyDownMask处理程序:
google it,你会开始的。@Pedroveira:现在回答还不晚。